postgresql 日期查询最全整理
短信预约 -IT技能 免费直播动态提醒
1、获取当前日期
select now();
select current_timestamp;
返回值均是当前年月日、时分秒,且秒保留6位小数,两种方式等价
select current_time;
返回值:时分秒,秒最高精确到6位
select current_date;
返回值:年月日
2、查询今天的数据
SELECT * FROM 表名 WHERE 时间字段 >= current_date AND 时间字段 < current_date + 1;
3、查询昨天的数据
SELECT * FROM 表名 WHERE 时间字段 >= current_date - 1 AND 时间字段 < current_date;
4、查询一个月内的数据
SELECT * FROM 表名 WHERE 时间字段 >= current_date - interval '1 month' AND 时间字段 <= current_date;
5、按日, 周, 月, 季度, 年统计数据
select date_trunc('DAY', 时间字段) as statisticTime, 分组字段, count(0) from 表名 GROUP BY date_trunc('DAY', 时间字段), 分组字段
日: DAY; 周: WEEK; 月: MONTH; 季度: QUARTER; 年: YEAR
6、 查询昨天、上周、上月、上年的日期
select to_char( now() - interval '1 day','yyyy-mm-dd');
select to_char( now() - interval '1 week','yyyy-mm-dd hh:mi:ss');
select to_char( now() - interval '1 month','yyyy-mm-dd');
select to_char( now() - interval '1 year','yyyy-mm-dd');
7、查询今天、今月、今年的开始的日期时间
select date_trunc('year', now())
select date_trunc('month', now())
select date_trunc('day', now())
select date_trunc('hour', now())
select date_trunc('minute', now())
select date_trunc('second', now())
8、查询最近1秒,1分,1小时,1天,1周(7天),1月,1年的记录
select * from 表名 where timestamp_start >= current_timestamp - interval ' 1 seconds '
select * from 表名 where timestamp_start >= current_timestamp - interval ' 1 minutes'
select * from 表名 where timestamp_start >= current_timestamp - interval ' 1 hours'
select * from 表名 where timestamp_start >= current_timestamp - interval ' 1 day'
select * from 表名 where timestamp_start >= current_timestamp - interval ' 7 day'
select * from 表名 where timestamp_start >= current_timestamp - interval ' 1 month'
select * from 表名 where timestamp_start >= current_timestamp - interval ' 1 year'
9、从时间戳中提取 年月日时分秒、周
select date_part('year', timestamp '2024-02-16 12:38:40')
select date_part('month', timestamp '2024-02-16 12:38:40')
select date_part('day', timestamp '2024-02-16 12:38:40')
select date_part('hour', timestamp '2024-02-16 12:38:40')
select date_part('minute', timestamp '2024-02-16 12:38:40')
select date_part('second', timestamp '2024-02-16 12:38:40')
select date_part('week', timestamp '2024-02-16 12:38:40')
到此这篇关于PostgreSQL 您要的日期查询都在这的文章就介绍到这了,更多相关postgresql 日期查询内容请搜索编程网(www.lsjlt.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.lsjlt.com)!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341