PostgreSQL 当前日期前10天
时间: 2024-05-13 22:16:59 浏览: 215
可以使用 PostgreSQL 内置函数 `current_date` 和操作符 `-` 来获取当前日期前10天的日期,示例如下:
```sql
SELECT current_date - interval '10 days';
```
这将返回当前日期前10天的日期。注意要用单引号括起间隔字符串 `'10 days'`。
相关问题
postgresql 日期处理例子
好的,PostgreSQL 日期处理的一个例子是将日期格式化为特定的字符串。例如,以下查询可以将当前日期(使用 NOW() 函数)格式化为 'YYYY-MM-DD' 形式的字符串:
SELECT to_char(NOW(), 'YYYY-MM-DD');
这将返回当前日期的字符串格式,例如 '2022-10-28'。您也可以使用 DATE_TRUNC 函数来按月截取日期,并计算该月的第一天。例如,以下查询将 current_date 截取为月份的第一天,并将其格式化为 'YYYY-MM-DD' 形式的字符串:
SELECT to_char(DATE_TRUNC('month', CURRENT_DATE), 'YYYY-MM-DD');
这将返回当前月的第一天的字符串格式,例如 '2022-10-01'。希望这个例子对您有所帮助!
postgresql获取当年每个月列表
可以使用 PostgreSQL 中的 `generate_series` 函数结合 `date_trunc` 函数来生成当年每个月的日期列表,然后使用 `to_char` 函数将日期转换为字符串表示月份即可。具体实现如下:
```sql
SELECT to_char(month, 'YYYY-MM') AS month
FROM generate_series(date_trunc('year', now()), date_trunc('year', now()) + INTERVAL '1 year - 1 day', INTERVAL '1 month') AS month;
```
其中,`date_trunc('year', now())` 表示获取当前日期所在年份的第一天,`date_trunc('year', now()) + INTERVAL '1 year - 1 day'` 表示获取当前日期所在年份的最后一天,`INTERVAL '1 month'` 表示每次增加一个月。`generate_series` 函数会生成从第一个参数到第二个参数之间以第三个参数为步长的序列。
执行以上 SQL 语句可以得到如下结果:
```
month
------------
2021-01
2021-02
2021-03
2021-04
2021-05
2021-06
2021-07
2021-08
2021-09
2021-10
2021-11
2021-12
(12 rows)
```
阅读全文