Эмуляция uniq -c в sql - PullRequest
       1

Эмуляция uniq -c в sql

1 голос
/ 27 января 2011

Учитывая список ...

A
B
A
A

... с требуемым выводом ...

A 3
B 1

Один из способов сделать это в командной строке Unix -

cat list | sort | uniq -c

Есть ли простой способ сделать это в стандартном SQL?

Ответы [ 3 ]

2 голосов
/ 27 января 2011

Использовать агрегатную функцию COUNT:

  SELECT t.column,
         COUNT(*)
    FROM YOUR_TABLE t
GROUP BY t.column
ORDER BY t.column
1 голос
/ 27 января 2011
select 
  letter_,
  count(*)
from 
  table_
group by
  letter_
order by 
  count(*)
1 голос
/ 27 января 2011

В SQL вы можете использовать выражение group by. е, г:

SELECT COLUMN_NAME, COUNT(1)
  FROM YOUR_TABLE
GROUP BY COLUMN_NAME

http://en.wikipedia.org/wiki/Group_by_(SQL)#Queries

...