简体   繁体   English

如何从具有两个日期的表中聚合每个日期的记录数?

[英]How to aggregate number of records per date from table with two dates?

I have following table:我有下表:

person arrival到达 departure离开
John约翰 01/01/2022 2022 年 1 月 1 日 04/01/2022 2022 年 4 月 1 日
Ana安娜 03/01/2022 2022 年 3 月 1 日 04/01/2022 2022 年 4 月 1 日
Ronald罗纳德 04/01/2022 2022 年 4 月 1 日 NULL NULL

And I should get something like:我应该得到类似的东西:

date日期 new_arrived新到货 new_departured new_departured
01/01/2022 2022 年 1 月 1 日 1 1 0 0
03/01/2022 2022 年 3 月 1 日 1 1 0 0
04/01/2022 2022 年 4 月 1 日 1 1 2 2

Could anyone help me?有人可以帮我吗? Thank you in advance!先感谢您!

My idea would be:我的想法是:

with temp1 as(
SELECT arrival FROM original_table
WHERE arrival is not null
UNION ALL
SELECT departure FROM original_table
WHERE departure is not null)

SELECT temp1.arrival as date, 
(SELECT Count(arrival) FROM original_table WHERE arrival=date),
( SELECT Count(departure) FROM original_table WHERE departure=date)
FROM temp1
GROUP BY temp1.arrival;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM