请教一个查询过滤的问题 delete from T T1where exists (select 1 from T WHERE 编号=T1.编号 and 日期>T1.日期) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 上面给出的是删除其他记录的语句,如果只是查询,把exists 改为not exists即可select * from T T1where not exists (select 1 from T WHERE 编号=T1.编号 and 日期>T1.日期) 查询还可以考虑用分析函数select 编号,max(项1)keep(dense_rank last order by 日期) 项1,max(项2 )keep(dense_rank last order by 日期) 项2max(日期)from Tgroup by 编号 用分析函数吧,效率会好些row_number() over(partition by 编号 order by 日期 ) max(项1)keep(dense_rank last order by 日期) 项1解释一下这一行的意思呗? 这个最后得到的是不是以编号分组的组合行?啥叫组合行啊?不懂这个语句执行的结果和我在2楼语句执行的结果是一样的这玩意还是最近和大版学的,蛮好用的,呵呵我的意思是会不会存在这个情况编号相同1 2 5 time11 3 4 time2你得到的结果是 1 3 5 time2 ? oracle 分析函数中 keep关键字的使用 如何针对数据库字段创建2选1必填的约束? 关于用PL/SQL设置oracle自增列问题? JSP连接ORACLE数据库的问题 散分!在线等! 根据主键判定是insert还是update的问题 rs.fields.count的是-1 寻找数据库维护服务 如何得到一段PL/SQL代码的执行时间? 新建的数据库的字符集和原卸载库的一样. IMP的时候为什么还提示字符集不对?? 刚用ORACLE,有个存储过程调不出来。那为仁兄帮帮忙。 求查询处理 请教!用何种方式处理这样的大量查询。。。。
select * from T T1
where not exists (select 1 from T WHERE 编号=T1.编号 and 日期>T1.日期)
select 编号,
max(项1)keep(dense_rank last order by 日期) 项1,
max(项2 )keep(dense_rank last order by 日期) 项2
max(日期)
from T
group by 编号
row_number() over(partition by 编号 order by 日期 )
解释一下这一行的意思呗?
啥叫组合行啊?不懂
这个语句执行的结果和我在2楼语句执行的结果是一样的
这玩意还是最近和大版学的,蛮好用的,呵呵
我的意思是会不会存在这个情况
编号相同
1 2 5 time1
1 3 4 time2
你得到的结果是 1 3 5 time2 ?