oracle统计时间段内每一天的数据(推荐)
短信预约 -IT技能 免费直播动态提醒
下面给大家介绍oracle统计时间段内每一天的数据,具体sql语句如下所示:
1. 生成1000个随机数
SELECT ROWNUM RN,
DBMS_RANDOM.VALUE(0, 1000) RANDOM
FROM DUAL
CONNECT BY ROWNUM <= 1000;
注:DBMS_RANDOM.VALUE(A, B)是随机数产生函数, A是区间的开始,B是区间的结束
2. 例如:拆分以逗号隔开的 A,B,C,D 字符串
SELECT REGEXP_SUBSTR('A,B,C,D', '[^,]+', 1, ROWNUM)
FROM DUAL
CONNECT BY ROWNUM <= REGEXP_COUNT('A,B,C,D', '[,]', 1) + 1;
注:REGEXP_SUBSTR是字符串截取正则表达式:A,B,C,D 是要截取的字符串;[^,]+ 是正则表达式匹配模式,匹配以非逗号的任意字符开始,以非逗号的任意字符结束的一段字符, 1 是从第一个字符开始, ROWNUM 是匹配的第 ROWNUM 字符串。
REGEXP_COUNT是数量查询正则表达式:A,B,C,D 是要截取的字符串;[,] 是正则表达式匹配模式,匹配以逗号, 1 是从第一个字符开始; REGEXP_COUNT + 1 就可以算出有多少个子字符串
3. 列出两个月份之间所有的月份
SELECT TO_CHAR(ADD_MONTHS(DATE'2009-03-01', ROWNUM-1), 'YYYY-MM') MONTHS
FROM DUAL
CONNECT BY ROWNUM <= MONTHS_BETWEEN(DATE'2010-03-01', DATE'2009-03-01') + 1;
4. 列出两个日期之间所有的天
SELECT TO_CHAR(DATE'2009-05-11' + ROWNUM - 1, 'YYYY-MM-DD') AS DAYS
FROM DUAL
CONNECT BY ROWNUM <= DATE'2018-01-02' - DATE'2018-03-07' + 1
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
oracle统计时间段内每一天的数据(推荐)
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
2024-04-02
2024-04-02
MySQL怎么按天分组统计一定时间内的数据
今天小编给大家分享一下MySQL怎么按天分组统计一定时间内的数据的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。思路分析如果能
2023-07-05
MySQL按天分组统计一定时间内的数据,没有数据补0
文章目录 简介思路分析SQL实现按天统计数据1.没数据的一天过滤2.没数据的一天有日期总数为null3.没数据的一天有日期总数为04.加入其它分组字段没数据的一天有日期总数为0 简介 工作中偶尔会出现一个
2023-08-18
MySQL按天分组统计一定时间内的数据实例(没有数据补0)
目录简介思路分析SQL实现按天统计数据1.没数据的一天过滤2.没数据的一天有日期总数为null3.没数据的一天有日期总数为04.加入其它分组字段没数据的一天有日期总数为0附:mysql按日、周、月进行分组统计总结简介工作中偶尔会出现一个查
2023-03-01