gpt4 book ai didi

sql - Postgres 计算 GROUP BY 中的唯一结果

转载 作者:行者123 更新时间:2023-11-29 13:22:28 26 4
gpt4 key购买 nike

我有一张 table :

id | parent_id  |    create_time  
---|------------|--------------------
1 | 1 | 2016-08-26 00:00:00
2 | 2 | 2016-08-24 00:00:00
3 | 2 | 2016-08-22 00:00:00
4 | 4 | 2016-07-26 00:00:00
5 | 5 | 2016-07-24 00:00:00

我需要计算每个月(周、日)的唯一“parent_id”。
输出是这样的:

---------------------|----  
2016-08-01 00:00:00 | 2
2016-07-01 00:00:00 | 2

但我只能这样做:

SELECT date_trunc('month', create_time),count(parent_id) FROM test GROUP BY
date_trunc('month', create_time),parent_id

结果:

--------------------|---
2016-07-01 00:00:00 | 1
2016-07-01 00:00:00 | 1
2016-08-01 00:00:00 | 1
2016-08-01 00:00:00 | 2

我尝试了很多选择,但没有足够的知识。

最佳答案

您需要从 group by 子句中删除 parent_id。您可能还想使用 count(distinct parent_id):

SELECT date_trunc('month', create_time),
count(distinct parent_id)
FROM test
GROUP BY date_trunc('month', create_time)

关于sql - Postgres 计算 GROUP BY 中的唯一结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39226184/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com