• 售前

  • 售后

热门帖子
入门百科

postgresql 实现查询某时间区间的所有日期案例

[复制链接]
喜喜保镖撼 显示全部楼层 发表于 2021-10-26 12:59:31 |阅读模式 打印 上一主题 下一主题
焦点sql如下:
  1. select daytime::date from generate_series(
  2. ('2017-06-01'),--查询开始日期(可根据需求调整)
  3. (select now()::date),--查询结束日期(可根据需求调整)
  4. '1 day'--间隔(可根据需求调整)
  5. ) s(daytime)
复制代码
以上sql,得到效果为从6月1号到今天这个时间区间内的每天的日期,如下:

举例说明:
查询tableA所有time_period区间内的日期,time_period的数据格式为:20170101-20170120;
  1. select daytime,periods from (select daytime::date
  2. from generate_series(
  3. (select min(score_date) from tableA),--查询开始日期
  4. (select now()::date),--查询结束日期
  5.   '1 day'--间隔
  6. ) s(daytime)) t ,tableA where
  7. (t.daytime >((substr(time_period,0,5)||'-'||substr(time_period,5,2)||'-'||substr(time_period,7,2))::timestamp + '-1 day')::date )
  8. and t.daytime <((substr(time_period,10,4)||'-'||substr(time_period,14,2)||'-'||substr(time_period,16,2))::timestamp + '1 day')::date
复制代码
补充:PostgreSQL查找某个时间段内某条数据(订单)的最大创建时间、最小创建时间
sql语句:
  1. select max(created_date),min(created_date) from biz_retail_order where source_order_no like '%daling_qa11184_%' and created_date > '2020-11-18 15:30:00' ;
复制代码
效果为:

以上为个人履历,盼望能给各人一个参考,也盼望各人多多支持脚本之家。如有错误或未思量完全的地方,望不吝见教。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作