Oracle数据库 根据时间范围 查询 时间范围内的 年 ,月, 日 以及 一天的24小时 (SQL 语句)
2018-01-05 11:50
447 查看
查询时间范围内对应的年
SELECT TO_CHAR ( ADD_MONTHS ( TO_DATE ('2013', 'yyyy'), (ROWNUM - 1) * 12 ), 'yyyy' ) AS years FROM DUAL CONNECT BY ROWNUM <= MONTHS_BETWEEN ( TO_DATE ('2018', 'yyyy'), TO_DATE ('2013', 'yyyy') ) / 12 + 1
查询时间范围内对应的月份
SELECT TO_CHAR ( ADD_MONTHS ( TO_DATE ('2017-10', 'yyyy-MM'), ROWNUM - 1 ), 'yyyy-MM' ) AS months FROM DUAL CONNECT BY ROWNUM <= MONTHS_BETWEEN ( TO_DATE ('2018-04', 'yyyy-MM'), TO_DATE ('2017-10', 'yyyy-MM') ) + 1
查询时间范围内对应的日期
SELECT TO_CHAR ( TO_DATE ('2017-11-01', 'yyyy-MM-dd') + ROWNUM - 1, 'yyyy-MM-dd' ) AS TIME FROM DUAL CONNECT BY ROWNUM <= TRUNC ( TO_DATE ('2017-12-01', 'yyyy-MM-dd') - TO_DATE ('2017-11-01', 'yyyy-MM-dd') ) + 1
查询一天的24 个小时
SELECT TO_CHAR ( TO_DATE ('2017-01-01', 'yyyy-mm-dd') + (ROWNUM - 1) / 24, 'hh24' ) AS HOUR FROM dual CONNECT BY 24 >= ROWNUM
当然 以上的sql语句都是基于Oracle数据库的 ,对于其他的数据库并不是很合适。
查询出一定时间范围内的年 月,日, 主要是为了LEFT JOIN 其他数据时使用的。一般来说 ,在查询报表数据的时候比较实用,接下来会写关于sql server 数据库 根据时间范围 查询 时间范围内的 年 ,月, 日 以及 一天的24小时的SQL 语句
相关文章推荐
- SQL语句根据具体时间查询数据
- sql语句中日期时间格式化查询 sql查询日期范围
- 如何用SQL语句,查询数据库(日期+时间字段)中等于某一天的记录
- 巧用DISPLAY_AWR函数与dba_hist_sqlstat结合查询SQL语句在指定节点指定时间范围内的历史执行计划
- 巧用DISPLAY_AWR函数与dba_hist_sqlstat结合查询SQL语句在指定节点指定时间范围内的历史执行计划
- Oracle查询Sql语句中的时间格式转化
- SQL语句:orac 3ff0 le中如何插入Date类型的数据和根据Date数据进行查询的方法
- 动态SQL语句根据数据库列来查询数据,动态的生成列名称
- 根据条件查询动态拼接sql语句
- 关于ADO+SQL /Access里面查询日期时间类型语句的一点总结
- sql语句查询经纬度范围
- 根据查询语句导出mysql到sql文件
- 根据会员编号、会员名称、会员积分、店铺编号查询数据的简单方法(sql语句)
- 根据top进程抓取oracle数据库耗费资源的sql语句
- 根据PID查询正在执行的SQL语句
- mysql sql语句执行时间查询
- mysql中获取一天、一周、一月时间数据的各种sql语句写法
- Oracle数据库应用SQL语句进行分页,以及引申出来对rownum的理解
- gbase,hive,teradata,db2,oracle数据库查询字段信息,类型,注释的sql语句.
- sql语句查询经纬度范围