可用min函数来取同类记录最早的时间。如emp表中有如下数据:现要取出同一个deptno下,hiredate时间最早的记录,可用如下语句:select a.* from emp a,(select deptno,min(hiredate) hiredate from emp group by deptno) bwhere a.deptno=b.deptno and a.hiredate=b.hiredate;查询结果:...
时间字段的话 最简单的方式就是按时间排序即可order by 时间字段 desc,也可以用MAX函数搜索出最大的时间。希望我的回答对你有帮助。
最后一个yyyy-mm-hh写错了,应该为yyyy-mm-dd。还有最好写成:select * from tab_dc t where begintime between to_date('2011-8-22 8:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2011-8-22 12:30:00','yyyy-mm-hh hh24:mi:ss')在大数据量有索引的情况下,能很大的提高...
oracle记录中选择出第一条记录的方法。如下参考:1.创建测试表 Createtabletest_order(idnumber,valuevarchar2(50));2.插入测试数据 插入test_order值(3,'v3');插入test_order值(2,'v2');插入test_order值(1,'v1');插入test_order值(5,'v5');插入test_order值...
在Oracle数据库中,当我们使用to_char(sysdate,'JD')时,实际上获取的是儒略日(Julian day,JD)值。儒略日记录的是从公元前4713年1月1日,协调世界时中午12时开始所经过的天数。儒略日之所以重要,在于它提供了一种统一的历法标准,使得不同历法的年表能够统一起来。它在天文学领域有着广泛的应用,...
--a_table你要处理的表 your_date你需要处理的时间字段 select * from a_table where your_date between to_date(to_char(sysdate-3,'yyyymmdd'),'yyyymmdd') and to_date(to_char(sysdate,'yyyymmdd'),'yyyymmdd')处理周五00:00:00至周一00:00:00之前的数据 ...
when t.adate < to_Date(to_char(sysdate, 'yyyymm') || '01', 'YYYYMMDD') then t.num else 0 end),sum(case when t.adate < to_Date(to_char(sysdate, 'yyyymm') || '01', 'YYYYMMDD') then t.amount else 0 end),sum(case when t.adate <= last_day(sysdate) then t...
用sqlplus连接数据库,在执行sql语句之前写这样一句:set timing onset auotrace traceonly Elapsed就是sql的执行时间
select * from tab where dtcol between to_date('2012-05-01 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2012-05-31 00:00:00','yyyy-mm-dd hh24:mi:ss')
1、有时间字段, 根据时间条件排序,取前十条和后十条 (1)前十条:select * from (select * from tab_name a order by date_col )where rownum<11;(2)后十条:select * from (select * from tab_name a order by date_col desc)where rownum<11;2、没有时间字段, 直接根据物理...