我在下面的postgres数据库里有一张桌子。我想知道这些值(name1,name2,name3)在trial为1的表中出现了多少次。
在低于预期产量的情况下:
name1, 4
name2, 3
name3, 2
+--------------+
| id|name|trial|
+--------------+
|1 |name1|1 |
|2 |name1|1 |
|3 |name1|1 |
|4 |name1|1 |
|5 |name2|1 |
|6 |name2|1 |
|7 |name2|1 |
|8 |name3|1 |
|9 |name3|1 |
我到目前为止所做的:
SELECT count(C.NAME)
FROM FIRST AS C
WHERE NAME = (
SELECT CS.NAME
FROM FIRST AS CS
WHERE TRIAL = 1
GROUP BY CS.NAME
)
此查询返回9,即行数。
最佳答案
您缺少group by子句。此外,可以简化查询,请尝试以下操作:
SELECT count(1), Name
FROM FIRST
WHERE TRIAL = 1
GROUP BY Name
关于sql - 如何计算表格中分组值的情况?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52991633/