Oracle中的case语句

2014-11-24 18:14:24 · 作者: · 浏览: 0

1.END后面的 final_url是别名


2.UTL_URL.unescape(final_url,'UTF-8') 是解码url


select * from (


select UTL_URL.unescape(final_url,'UTF-8') as url,sum(list_pv_count) as total_pv from (


select


CASE


WHEN INSTR(list_url,' ',28)>0 THEN SUBSTR( list_url,0,(INSTR(list_url,' ',28)-1))


WHEN INSTR(list_url,'&',28)>0 THEN SUBSTR( list_url,0,(INSTR(list_url,'&',28)-1))


ELSE list_url


END final_url,


list_url,list_pv_count from T_LOG_CHANNEL_TOP_LIST


where list_date between to_date('20110629 00:00:00', 'yyyymmdd hh24:mi:ss') and to_date('20110629 23:59:59', 'yyyymmdd hh24:mi:ss') and list_channel_constant='BAIKE'


)group by final_url order by total_pv desc


) where rownum<201;