У меня есть таблица, которая выглядит какСЧИТАЕТ количество столбцов, где условие истинно? SQL Server 2008 R2
ID Col1 Col2 Col3 Col4
1 3 5 3 3
То, что я хочу сделать, это подсчитать количество 3
с в данном ряду.
Я попытался
select COUNT(*)
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME = 'TableName' -- but obviously I need WHERE Col1 = 3 OR Col2 = 3...
Что бы быть лучшим способом для достижения этой цели?
Это признак сломанного дизайна - если у вас есть элементы данных, которые в некотором смысле то же «типа» вещи, например, что вы хотите запрос по всем этим значениям, они должны содержаться в одном столбце. Эта таблица должна иметь 3 столбца '(ID,, Col)' где '' является подходящим именем для любого элемента * данных *, который был встроен в * имя * этих четырех столбцов в качестве завершающих номеров, а затем у вас будет 4 * строки * - '(1,1,3)', '(1,2,5)', '(1,3,3)' и '(1,4,3)'. Затем запрос тривиален для записи. –