oracle 查询时间段每一天日期。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 查询时间段每一天日期。相关的知识,希望对你有一定的参考价值。

查询时间段每一天的日期用如下语句。

如要查询2015年1月1日到2015年1月15日每一天的日期。

with t as
(select rownum-1 rn from dual connect by rownum<=100)
select to_date(\'2015-01-01\',\'yyyy-mm-dd\')+rn from t 
where to_char(to_date(\'2015-01-01\',\'yyyy-mm-dd\')+rn,\'yyyy-mm-dd\') between \'2015-01-01\' and \'2015-01-15\' ;

查询结果:

参考技术A SELECT *
  FROM (SELECT TO_DATE('20061101', 'yyyymmdd') + LEVEL - 1 AS EVERYDAY
          FROM DUAL
        CONNECT BY LEVEL <= (LAST_DAY(TO_DATE('20061101', 'yyyymmdd')) -
                   TO_DATE('20061101', 'yyyymmdd') + 1));

参考技术B select to_char(p.createdtimestamp,'yyyy-mm-dd'),count(*) from 表 p group by to_char(p.createdtimestamp,'yyyy-mm-dd')

我想你是这个意思,只是group by 里面不知道怎么写了是吧,最后的统计我不知道是count 还是sum的。另外如果是本月的话在加条件限制本月。估计这个条件你应该会下吧?
参考技术C 每天的销售数量可以根据业务去汇总,如果想给定日期段,获取每天作为一条记录,可以有一种方式,但日期范围不能太大,否则效率会有问题。
select trunc(Start_Date)+rownum from 表名
where rownum<=trunc(End_Date)-trunc(Start_Date)

前提是:表中要有足够的记录数,但也不能太多,否则效率同样会低。
参考技术D 什么意思,如果有时间段了,第一天的日期不就有了吗。你是要查什么,是时间段是星期几吗?追问

要查本月每一天的销售数量汇总

追答

where date>本月第一天.在where后面就可以直接查询的.再用sum函数

以上是关于oracle 查询时间段每一天日期。的主要内容,如果未能解决你的问题,请参考以下文章

oracle 如何查询两个时间段里的每一天数据之和。(只有开始日期和结束日期,没有每一天日期)

oracle 查询一段时间内每一天的统计数据sql怎么写

Oracle获取一段时间范围内的日期,从2006-01-01到2013-12-31的每一天的日期表

MYSQL 怎样获取指定月份的每一天,求助

mysql怎么得到时间段每一天,不用表,就是得到一个时间段的每一天的日期

是否可以编写一个查询来返回两个指定日期之间的每一天的日期?