sql - 选择开始日期和结束日期之间的每个月

标签 sql arrays postgresql date select

假设我有一个 startdate = '2010/04/01' 和一个 enddate = '2011/02/01'

如何设置查询以便检索下表作为响应:

month
2010/04/01
2010/05/01
2010/06/01
2010/07/01
2010/08/01
2010/09/01
2010/10/01
2010/11/01
2010/12/01
2011/01/01
2011/02/01

请注意,我对格式不太在意,任何有效的都可以。

最佳答案

PostgreSQL有generate_series()使这成为一项简单的任务:

SELECT generate_series('2010-04-01', '2011-02-01', interval '1 month')::date

关于sql - 选择开始日期和结束日期之间的每个月,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10747695/

相关文章:

arrays - 使用数组作为 Map 的 'value' 部分

Checknullarray 结构

php - pg_query() - “无法将连接设置为阻塞模式(错误号 8)

jquery - 如何动态访问 JSON 对象的属性

postgresql - Docker(组成): making knex work with postgres

javascript - 如何将 PostgresQL 命令转换为 SQL 查询生成器语法

php - Mysql如何处理JOIN和重复条目

c++ - Badly placed ()的错误

sql - 在两次选择中为每对插入记录

sql - SQL在表达式上以(使用`LIKE`)开始