首页 > 数据库技术 > 详细

数据库常用语句

时间:2018-09-28 18:28:36      阅读:175      评论:0      收藏:0      [点我收藏+]

1.实现取值转换

select decode(t.trans_sub_type, ‘Q‘, ‘1‘, ‘D‘, ‘2‘, ‘T1‘, ‘3‘,‘D1‘, ‘4‘) as trans_sub_type,t.trans_seq,t.trans_date from trans_info_log t where trans_status=‘04‘ order by create_time desc

 

2.查询100个中排名第67的做法,三重嵌套

select * from (
select a.*,rownum from
( select t.* from aab t order by t.xinshui desc ) a
where rownum<=67 order by rownum desc
) where rownum=1

 

有排序,那么就是三重嵌套rownum或者分析函数两重搞定
分析函数如下实现:
select * from
(select a.*, rank() over(order by xinshui desc) as lev from aab a)
where lev=2


rownum的使用必须要包括第一条记录, 也就是 rownum >= 1 这个语句可以,
而rownum > 1 则不可以, 因为这个条件中rownum为1时就不成立了.
所以直接使用 rownum=2 也不会有结果显示, 因为 1 != 2.
在这种情况下就是利用嵌套查询来实现了!~

 

3.查重复

select merchant_code from route_merch_pool_map where merchant_code in (select merchant_code from route_merch_pool_map group by merchant_code having count(1) >= 2)

 

数据库常用语句

原文:https://www.cnblogs.com/mwg666/p/9720077.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!