PostgreSQL - 如何获取每个月最后一天的所有行

问题描述 投票:0回答:1

我有几张表,每天记录所有数据。 但是,我需要做一个选择,带来每个月最后一天的所有记录。 我在 Stack 上四处张望,但没有找到它。

我需要查询 Postgresql。 数据类型是数据。 数据是从2016-08-02到今天

例子: 桌名=零食

姓名(str) 金额(整数) 日期(日期)
饼干 3 2018-01-28
布朗尼 5 2018-01-28
饼干 8 2018-01-29
布朗尼 6 2018-01-29
饼干 9 2018-01-30
布朗尼 4 2018-01-30
饼干 15 2018-01-31
布朗尼 14 2018-01-31

……

姓名(str) 金额(整数) 日期(日期)
饼干 24 2018-02-25
布朗尼 32 2018-02-25
饼干 20 2018-02-26
布朗尼 15 2018-02-26
饼干 12 2018-02-27
布朗尼 7 2018-02-27
饼干 5 2018-02-28
布朗尼 6 2018-02-28

我试过 date_trunc 和 distinct,但我没有得到每个月末的回报。

结果应该是:

姓名(str) 金额(整数) 日期(日期)
饼干 15 2018-01-31
布朗尼 14 2018-01-31
饼干 5 2018-02-28
布朗尼 6 2018-02-28
postgresql date each
1个回答
0
投票

您可以将日期的月份与第二天的月份进行比较

Select * from snacks
where EXTRACT(MONTH FROM snacks.d) != EXTRACT(MONTH FROM snacks.d + 1)
© www.soinside.com 2019 - 2024. All rights reserved.