MySQL запрос - PullRequest
       12

MySQL запрос

1 голос
/ 27 мая 2009

в MySQL, как вы считаете непустые ячейки в одной строке? И я хочу посчитать ячейки только между определенными столбцами, скажем, между столбцами 3-10. не все столбцы ... опять же, только в этой строке.

Ответы [ 2 ]

1 голос
/ 27 мая 2009

К столбцам можно обращаться только в SQL с именами, а не числами. Если вы хотите это сделать, вам придется делать это на языке программирования, который вызывает запрос

0 голосов
/ 27 мая 2009

Теоретически, атрибуты relvar неупорядочены, и поэтому вы не должны этого делать. Тем не менее, в MySQL я считаю, что вы можете запросить каталог, чтобы получить имена, а также «порядок» столбцов таблицы. Вы можете получить имена столбцов и их порядок следующим образом:

select column_name, ordinal_position from information_schema.columns where table_name='my_table'; 

Однако я сомневаюсь, что это поможет вам слишком сильно. То, что вы делаете, пахнет плохим дизайном базы данных, и если вы ничего не можете с этим сделать, что, к сожалению, иногда случается, вы можете извлечь строки из таблицы на языке программирования, например PHP, а затем используйте циклы для «ручного» подсчета непустых ячеек в любых ячейках, которые вам нравятся. Вы можете извлечь строки в массив, а затем получить доступ к отдельным ячейкам, указав индекс массива.

Если вы счастливы делать это таким образом, то почему бы и нет? Это определенно не должно быть слишком сложным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...