<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    解析:怎樣使用Oracle的DECODE()函數

    Posted on 2009-06-18 16:08 林光炎 閱讀(480) 評論(0)  編輯  收藏 所屬分類: ORACLE
     

    DECODE()函數,它將輸入數值與函數中的參數列表相比較,根據輸入值返回一個對應值。函數的參數列表是由若干數值及其對應結果值組成的若干序偶形式。當然,如果未能與任何一個實參序偶匹配成功,則函數也有默認的返回值。

    區別于SQL的其它函數,DECODE函數還能識別和操作空值。

    語法:DECODE(control_value,value1,result1[,value2,result2…][,default_result]);

    control _value試圖處理的數值。DECODE函數將該數值與后面的一系列的偶序相比較,以決定返回值。

    value1是一組成序偶的數值。如果輸入數值與之匹配成功,則相應的結果將被返回。對應一個空的返回值,可以使用關鍵字NULL于之對應

    result1 是一組成序偶的結果值。

    default_result 未能與任何一個值匹配時,函數返回的默認值。

    例如:

    selectdecode( x , 1 , ‘x is 1 ’, 2 , ‘x is 2 ’, ‘others’) from dual

    當x等于1時,則返回‘x is 1’。

    當x等于2時,則返回‘x is 2’。

    否則,返回others’。

    需要,比較2個值的時候,可以配合SIGN()函數一起使用。

    SELECT DECODE( SIGN(5 -6), 1 'Is Positive', -1, 'Is Nagative', 'Is Zero')

    同樣,也可以用CASE實現:

    SELECT CASE SIGN(5 - 6)
                WHEN  1  THEN  'Is Positive'
                WHEN -1 THEN  'Is Nagative'
                ELSE 'Is Zero' END
                FROM DUAL

    此外,還可以在Order by中使用Decode。

    例如:表table_subject,有subject_name列。要求按照:語、數、外的順序進行排序。這時,就可以非常輕松的使用Decode完成要求了。

    select * from table_subject order by decode(subject_name, '語文', 1, '數學', 2, , '外語',3)(責任編輯:盧兆林)

    posts - 104, comments - 33, trackbacks - 0, articles - 0

    Copyright © 林光炎

    主站蜘蛛池模板: 亚洲gay片在线gv网站| 国产精品白浆在线观看免费 | 亚洲美女激情视频| 一级成人a毛片免费播放| 久久久青草青青亚洲国产免观| 久青草视频97国内免费影视| 亚洲综合av永久无码精品一区二区| 亚洲一区精品中文字幕| 国产精品免费看久久久| 亚洲国产精品线在线观看| 蜜臀98精品国产免费观看| 亚洲av永久无码精品天堂久久| 黄瓜视频高清在线看免费下载| 亚洲精品无码不卡在线播放| 在线免费观看色片| 美女裸体无遮挡免费视频网站| 亚洲国产精品成人| 国产一区二区免费| 亚洲国产精品一区二区第一页免| 美女黄频免费网站| 亚洲av网址在线观看| 亚洲三级高清免费| 亚洲爆乳精品无码一区二区| 亚洲另类少妇17p| 国产无遮挡无码视频免费软件 | 一本久久a久久精品亚洲| 免费A级毛片无码专区| 亚洲综合久久一本伊伊区| 国产乱子影视频上线免费观看| 黄视频在线观看免费| 亚洲精品网站在线观看你懂的| 好大好硬好爽免费视频| 一级毛片免费不卡直观看| 亚洲国产精品久久| 日本免费电影一区| 久久国产乱子伦精品免费强| 激情五月亚洲色图| 亚洲人成人一区二区三区| AV免费网址在线观看| 国内精品免费久久影院| 国产精品亚洲精品青青青|