Oracle查询连续5个月记录的实现方法

数据库 Oracle
Oracle中的查询方法很多,甚至可以查询连续的时间段内的记录,下文对该方法作了详细的解释说明,希望对您有所帮助。

Oracle查询方式多种多样,下面为您介绍的Oracle查询方法实现的是连续时间段内记录的实现方法,希望可以让您对Oracle查询有更多的认识。

表结构如下
姓名 日期 ...
a 200101
a 200102
a 200103
a 200104
a 200105
a 200401
a 200403
a 200404
a 200405
c 200901
c 200902
b 200301
b 200304
b 200801
b 200802
b 200803
b 200804
b 200805
现在需要找出连续5个月都有记录的人员和开始日期及结束日期,例如a从200101-200105和b从200801-200805

  1. SELECT 姓名, Start_HM, End_HM FROM(  
  2.          SELECT b.姓名, MIN (b.日期) Start_HM, MAX (b.日期) End_HM  
  3.          FROM (SELECT a.*, ADD_MONTHS(a.日期, ROWNUM * (-1)) cc  
  4.                FROM (SELECT *  
  5.                      FROM t  
  6.                      ORDER BY 姓名, 日期  
  7.                     ) a  
  8.               ) b  
  9.          GROUP BY b.姓名, b.cc)   
  10. WHERE MONTHS_BETWEEN(End_HM,Start_HM) >= 4; 

 

 

 

【编辑推荐】

Oracle查询日期所属月份的天数

oracle查询中表的连接顺序

Oracle查询用户表空间的实现

16种oracle查询日期语句

Oracle查询语句应用经验总结

责任编辑:段燃 来源: 互联网
相关推荐

2011-06-16 09:24:05

移动广告APPiOS

2020-10-23 10:53:06

iPhone 12苹果降价

2010-11-15 14:07:16

Oracle取固定记录

2010-10-27 16:49:23

Oracle删除重复记

2009-05-26 08:36:07

美国科技行业从业

2010-10-13 16:59:28

mysql查询

2019-09-03 09:01:08

5G韩国SKT

2010-08-31 08:38:55

SQL Server

2018-12-18 09:45:51

5G4G通信网络

2010-04-23 16:35:02

Oracle 查询记录

2010-11-15 14:42:03

Oracle查询重复记

2010-11-15 13:47:13

oracle记录加锁

2018-02-06 15:15:16

程序员年终奖

2010-05-18 17:32:33

MySQL查询优化

2010-11-25 14:05:15

MySQL查询中间记录

2010-10-29 16:41:12

Oracle模糊查询

2010-10-27 17:00:32

oracle树查询

2011-12-28 09:16:54

Windows Pho应用数量

2010-10-27 17:16:51

Oracle查询

2011-03-02 15:35:15

Oracle分组统计
点赞
收藏

51CTO技术栈公众号