动态每月和每日计数

时间:2019-06-11 21:03:32

标签: sql postgresql

我有一张看起来像这样的桌子

id | visit_date          | location_name | group_id | visit_date_only
-------------------------------------------------------------
17 |2019-06-11 16:38:00..| Location 1    |     1    | 2019-06-11
24 |2019-06-05 12:20:00..| Location 2    |     1    | 2019-06-05
11 |2019-05-13 18:40:00..| Location 1    |     1    | 2019-05-13

我想创建一个月度和每日计数。 例如:

Month | count
-------------
June  |    2

AND

   Day     | count
--------------------
2019-06-11 |   1

我了解count方法,您可以在查询中输入类似 '从到'

但是,有没有一种方法可以动态实现,而无需我输入哪个月和哪个日期,这意味着系统可以检测到我们所在的月份和日期。

1 个答案:

答案 0 :(得分:2)

您可以使用current_date。

喜欢

WHERE date_trunc('month', current_date) <= visit_date 
    AND visit_date < date_trunc('month', current_date) + INTERVAL '1 month'

与今天的想法相同,但是使用“天”而不是“月”