麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

Oracle用decode函數(shù)或CASE-WHEN實現(xiàn)自定義排序

2020-07-26 13:25:50
字體:
供稿:網(wǎng)友

1 問題

SQL排序,只要在order by后面加字段就可以了,可以通過加descasc來選擇降序或升序。但排序規(guī)則是默認的,數(shù)字、時間、字符串等都有自己默認的排序規(guī)則。有時候需要按自己的想法來排序,而不是按字段默認排序規(guī)則。

比如字段值為英文字段:MondayTuesdayWednesday等,如果按字段默認排序規(guī)則就為:

Friday
Monday
Saturday
Sunday
Thursday
Tuesday
Wednesday

實際我需要的是:

Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

2 decode函數(shù)

通過decode函數(shù)可以實現(xiàn),如下:

select * from table_dateorder by decode(DateStr,  'Monday',1  'Tuesday',2  'Wednesday',3  'Thursday',4  'Friday',5  'Saturday',6  'Sunday',7,  0);

后面的數(shù)字可以不連續(xù)。

3 case when語句

另外,還可以用case when來實現(xiàn):

select * from table_dateorder by (CASE DateStr  WHEN 'Monday' then 1  WHEN 'Tuesday' then 2  WHEN 'Wednesday' then 3  WHEN 'Thursday' then 4  WHEN 'Friday' then 5  WHEN 'Saturday' then 6  WHEN 'Sunday' then 7   ELSE 0   END);

4 總結(jié)

當(dāng)然,把字段直接賦值為對應(yīng)的數(shù)字效率會高很多,通過另外一張表再建立映射關(guān)系。

到此這篇關(guān)于Oracle用decode函數(shù)或CASE-WHEN實現(xiàn)自定義排序的文章就介紹到這了,更多相關(guān)Oracle用decode函數(shù)或CASE-WHEN實現(xiàn)自定義排序內(nèi)容請搜索武林網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持武林網(wǎng)!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 蜜桃麻豆视频 | 亚洲国产精品一区二区三区 | 青青青在线免费 | 欧美一级做性受免费大片免费 | 亚洲成人免费影视 | 色域tv| 免费毛片观看 | 男女无遮挡羞羞视频 | 精品国产一区二区三区久久久蜜月 | 亚洲91精品 | 一级黄色毛片子 | 欧美一级一片 | 亚洲午夜视频在线 | 国产九色视频在线观看 | 性欧美暴力猛交69hd | 精品一区二区在线播放 | 免费a网 | 国产一区二区三区色淫影院 | 精品视频在线免费看 | 看一级毛片 | 毛片免费视频播放 | av免费在线观看国产 | 狼人狠狠干 | 欧美黄色免费视频 | 黄色网址你懂的 | 91在线免费观看 | 国产午夜精品一区二区三区四区 | 一区二区免费网站 | 国产一国产精品一级毛片 | 小视频在线看 | 国内精品久久久久久久久久 | 毛片在线免费视频 | lutube成人福利在线观看污 | 日日草视频 | 久久蜜桃精品一区二区三区综合网 | 中文字幕在线播放一区 | 久久精品一级 | av在线免费观看国产 | 中文字幕偷拍 | 亚洲乱搞| 92自拍视频 |