如何结合DATE_TRUNC与MAX语句筛选每日enddate一致的名称?
需求与SQL实现方案
我的表包含以下列:
- name
- id
- startdate
- enddate
需求:筛选出每日enddate均相同的所有name;若同一name对应多个id,需选取该name对应的最大id。
获取每个name的最大id
select max(id), name, startdate, enddate from mytable group by id, name, startdate, enddate;
按日统计enddate数量的两种有效查询
方式一
select enddate, count(id) from mytable group by enddate order by enddate asc;
方式二
select date_trunc('day', enddate) m, count(enddate) enddates_per_Day from mytable group by m order by m;
统计结果示例
| m(日期) | 每日enddate数量 |
|---|---|
| 2022-11-01 | 3 |
| 2022-11-02 | 4 |
内容的提问来源于stack exchange,提问作者Birgitta
相关产品推荐
相关产品推荐

