Я могу выбрать все отдельные значения в столбце следующими способами:
SELECT DISTINCT column_name FROM table_name;
SELECT column_name FROM table_name GROUP BY column_name;
Но как мне получить количество строк из этого запроса? Требуется ли подзапрос?
Ответы:
Вы можете использовать
DISTINCT
ключевое слово вCOUNT
статистической функции:Это будет считать только отдельные значения для этого столбца.
источник
select A,COUNT(DISTINCT B) from table group by A
Это даст вам ОБА различные значения столбца и количество каждого значения. Я обычно нахожу, что я хочу знать обе части информации.
источник
columnName
, вы уже получаете отдельные значения только один раз, аdistinct
ключевое слово здесь ничего не делает. Попробуйте запрос без него, набор результатов точно такой же.Имейте в виду, что Count () игнорирует нулевые значения, поэтому, если вам нужно разрешить нулевое значение как отдельное отдельное значение, вы можете сделать что-то хитрое, например:
источник
case when my_col is null then 1 else my_col end
SELECT my_col, COUNT(my_col) + COUNT(CASE WHEN my_col IS NULL THEN 1 ELSE NULL END) as CountOf from my_Table GROUP BY my_col
count(*)
именно количество строк.Сумма sql уникальных значений column_name и отсортированная по частоте:
источник
Это даст количество отдельных групп столбцов.
источник
Вы должны посчитать этот отдельный col, а затем дать ему псевдоним.
источник
источник
**
**
источник
Вы можете использовать этот запрос, чтобы посчитать разные / разные данные. Спасибо
источник
После MS SQL Server 2012 вы также можете использовать оконную функцию.
источник
Счетчик (отличный ({fieldname})) избыточен
Просто Count ({fieldname}) дает вам все значения в этой таблице. Он не будет (как полагают многие) просто даст вам счет таблицы [то есть, НЕ такой же, как счетчик (*) из таблицы]
источник
count(field)
возвращает количество строк, гдеfield
естьnot null
.