SQL中的SELECT语句,用于过滤出多个条目

时间:2018-06-25 19:00:41

标签: sql oracle

我想查询一个价格链接了多少个不同的帐户。

name           | price | acc_no

Allnet Flat S  | 14.99 |   1
Allnet Flat XL | 24.99 |   2
Data Flat XL   | 14.99 |   2
Data Flat S    |  9.99 |   1
Family Flat S  | 29.99 |   3
Family Flat XXL| 59.99 |   4
SMS Flat S     |  9.99 |   1

我最接近的解决方案是

SELECT price, COUNT(acc_no) FROM "table" GROUP BY price

这里的问题是它显示了两个链接到9.99的帐户,尽管它是相同的帐号。我怎样才能让它只计算一次相同的帐户?

1 个答案:

答案 0 :(得分:3)

DISTINCT函数中使用COUNT

SELECT price, COUNT(DISTINCT account_no) FROM "table" GROUP BY price
--                  ^^^^^^^^