Order by 的数值型灵活使用

http://tech.ddvip.com   2006年03月31日    社区交流

本文详细介绍Order by 的数值型灵活使用

  代码:

  select * from table_a where id=p_id order by decode(函数,'asc',1,'desc',-1)*jsny; 

  控制试图的访问时间:

  6. 代码:

  create view ...

  as

  select ... from where exists(select x from dual where sysdate>=8:00am and sysdate<=5:00pm)

  妙用decode实现排序

  代码:

  select * from tabname

  order by decode(mode,'FIFO',1,-1)*to_char(rq,'yyyymmddhh24miss');

  select * from tabname

  order by decode(mode,'FIFO',rq-sysdate, sysdate-rq) 

  找出某个时期内工作日数:

  代码:

  select count(*)

  from ( select rownum-1 rnum

  from all_objects

  where rownum <= to_date('2002-02-28','yyyy-mm-dd') - to_date('2002-

  02-01','yyyy-mm-dd')+1 )

  where to_char( to_date('2002-02-01','yyyy-mm-dd')+rnum-1, 'D' ) not

  in ( '1', '7' )

  我觉得查询重复记录的语句就很经典

  代码:

  select rowid,bdsszd from BADWDJ a where a.rowid != (select max(rowid) from BADWDJ b where a.bdsszd =b.bdsszd) 

  由它引申的就有很多有用的语句,如昨天回答别人的排序的难题

  代码:

  select id,bdsszd from BADWDJ a where a.id = (select max(id) from BADWDJ b where a.bdsszd =b.bdsszd) order by id

  树型结构表的查询:

  代码:

  select ID,PARENT_ID from parent_child

  connect by prior id = parent_id

责编:豆豆技术应用

正在加载评论...