Учитывая список ...Эмуляция Uniq -c в SQL
A
B
A
A
... с желаемым выходом ...
A 3
B 1
Один из способов сделать это в командной строке Unix является
cat list | sort | uniq -c
Есть ли простой способ сделать это в стандартном SQL?
Учитывая список ...Эмуляция Uniq -c в SQL
A
B
A
A
... с желаемым выходом ...
A 3
B 1
Один из способов сделать это в командной строке Unix является
cat list | sort | uniq -c
Есть ли простой способ сделать это в стандартном SQL?
Используйте функцию COUNT агрегат:
SELECT t.column,
COUNT(*)
FROM YOUR_TABLE t
GROUP BY t.column
ORDER BY t.column
В SQL вы можете использовать группу по п .. е, г:
SELECT COLUMN_NAME, COUNT(1)
FROM YOUR_TABLE
GROUP BY COLUMN_NAME
select
letter_,
count(*)
from
table_
group by
letter_
order by
count(*)
Как вам придумайте 'COUNT (1)'? Я этого раньше не видел. Обычно используется 'COUNT (*)', 'COUNT (COLUMN_NAME)' или 'COUNT (DISTINCT COLUMN_NAME)'. – Gabe
1 является допустимым выражением для функции COUNT. Я использую его, потому что он включает в себя меньшее количество ключевых штрихов по сравнению с column_name или *. Также обратите внимание, что при использовании column_name строки с нулевыми значениями для этого столбца не учитываются. – Chandu