Подсчитайте, сколько раз значение присутствует в таблице

0

У меня есть таблица с более чем 390 столбцами.

Я хотел бы подсчитать, сколько раз значение "Y" присутствует в таблице.

Большинство столбцов могут иметь это значение, некоторые - нет.

Я не знаю, как это сделать, поскольку у него несколько столбцов.

Есть ли способ его выполнить?

Спасибо

Показать ещё 1 комментарий
Теги:
count

2 ответа

1

Ничего себе много колонок.

Вам нужно будет сделать это в цикле на выбранном вами языке (псевдокод):

while ($rows = mysql_query("SELECT * FROM TABLE")) {
  foreach ($col in $rows) {
     if ($col == 'Y') {
        $count++;
     }
  }
}
print("Count: $count");

Вероятно, это хорошая идея, чтобы попытаться нормализовать структуру вашей таблицы, чтобы у вас не было так много столбцов в 1 таблице

  • 0
    Какой это язык?
  • 0
    Псевдокод, что означает, что он представляет алгоритм , а не реальный код. Вам придется переписать на выбранном вами языке.
Показать ещё 1 комментарий
0

2 разных sql пути здесь, НО... вы должны поместить имена столбцов в

    select Columns, count(*) From 
    (select Column1  as Columns from your_table where Column1 = 'Y'
    union all
    select Column2  as Columns from your_table where Column2 = 'Y'
    union all
    select Column3 as Columns from your_table where Column3 = 'Y'
    union all
    select Column4  as Columns from your_table where Column4 = 'Y'
    union all
    select Column5  as Columns from your_table where Column5 = 'Y'
    union all
    select Column6  as Columns from your_table where Column6 = 'Y')myTab
    group by Column;

или же

select value
from yourtable
unpivot
(
  value
  for col in (column1, column2, column3, column4,...etc)
) un
where col = 'Y'

Ещё вопросы

Сообщество Overcoder
Наверх
Меню