Выберите отдельный, показать количество в конце строки - PullRequest
1 голос
/ 08 февраля 2012

У меня есть эта таблица / структура данных:

ID    Area       Postcode
------------------------
1     "Area 1"   "EN1 1NE"
2     "Area 2"   "AB2 3BA"
3     "Area 1"   "EN1 1NE"
4     "Area 3"   "XY4 5ZA"
5     "Area 4"   "MN6 5OP"

Строки 1 и 3 имеют дубликаты почтовых индексов и областей. Мне нужен запрос, который выводит счет как это:

Area       Postcode    Count
----------------------------
"Area 1"   "EN1 1NE"   2
"Area 2"   "AB2 3BA"   1
"Area 3"   "XY4 5ZA"   1
"Area 4"   "MN6 5OP"   1

Я искал и играл с DISTINCT и / или COUNT и / или подзапросами, но теряется здесь! # Слабого SQL-фу

Спасибо! Ben

Ответы [ 2 ]

3 голосов
/ 08 февраля 2012

Вы можете использовать количество (*) для группы следующим образом:

select Area, Postcode, count(*) from TABLE group by Area, Postcode;
2 голосов
/ 08 февраля 2012

необходимо использовать обратную черту в пределах ALIAS COUNT, чтобы избежать зарезервированного слова.

SELECT Area, 
       Postcode, 
       COUNT(ID) as `Count` 
FROM   tableName 
Group BY Area, Postcode
ORDER BY Area;
...