首页 > 解决方案 > Postgresql:循环通过 date_trunc 生成的组

问题描述

我的数据库中有一些记录有“createdAt”时间戳。

我试图从 postgresql 中得到的是那些按“createdAt”分组的记录

到目前为止,我有这个查询:

SELECT date_trunc('day', "updatedAt") FROM goal GROUP BY 1

这给了我:

+---+------------+-------------+ | date_trunc | +---+------------+-------------+ | Sep 20 00:00:00 | +---+------------+-------------+

这是创建记录的日子。

我的问题是:有没有办法生成类似的东西:

| Sep 20 00:00:00 | | id | name | gender | state | age | |----|-------------|--------|-------|-----| | 1 | John Kenedy | male | NY | 32 | | | | Sep 24 00:00:00 | | | | id | name | gender | state | age | |----|-------------|--------|-------|-----| | 1 | John Kenedy | male | NY | 32 | | 2 | John De | male | NY | 32 |

这意味着按 date_trunc 分组并选择这些行的所有列?

非常感谢!

标签: postgresql

解决方案


请尝试SELECT date_trunc('day', "updatedAt"), name, gender, state, age FROM goal GROUP BY 1,2,3。它不会像您期望的那样提供结构,而是“按 date_trunc 分组并选择所有列”。


推荐阅读