新的起點

          新的起點
          隨筆 - 9, 文章 - 1, 評論 - 1, 引用 - 0

          導航

          <2008年12月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章檔案

          相冊

          個人常用網站

          其它

          開發類網站

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          Oracle中Decode()函數 使用技巧

          decode(條件,值1,翻譯值1,值2,翻譯值2,...值n,翻譯值n,缺省值)
          該函數的含義如下:
          IF 條件=值1 THEN
          RETURN(翻譯值1)
          ELSIF 條件=值2 THEN
          RETURN(翻譯值2)
          ......
          ELSIF 條件=值n THEN
          RETURN(翻譯值n)
          ELSE
          RETURN(缺省值)
          END IF
          · 使用方法:
          1、比較大小
          select decode(sign(變量1-變量2),-1,變量1,變量2) from dual; --取較小值
          sign()函數根據某個值是0、正數還是負數,分別返回0、1、-1
          例如:
          變量1=10,變量2=20
          則sign(變量1-變量2)返回-1,decode解碼結果為“變量1”,達到了取較小值的目的。


          下面的例子說明了,如何讀取用戶CHECKUP表SEAPARK中的BLOOD_TEST_FLAG列下的項目,作為DECODE函數的實參支持值。
          SELECT checkup_type,
          DECODE(blood_test_flag,’Y’,’Yes’,’N’,’No’,NULL,’None’,’Invalid’)
          FROM checkup;

          posted on 2008-12-09 21:06 軋鋼王子 閱讀(144) 評論(0)  編輯  收藏 所屬分類: Oracle 語法

          主站蜘蛛池模板: 松原市| 锦州市| 无锡市| 古丈县| 轮台县| 佛冈县| 喀喇沁旗| 长白| 祁门县| 宜阳县| 宁明县| 高雄市| 乌拉特前旗| 平顺县| 辽阳市| 元朗区| 汨罗市| 儋州市| 富裕县| 芮城县| 哈密市| 益阳市| 永济市| 中宁县| 灵璧县| 敖汉旗| 阿合奇县| 高雄县| 拉萨市| 池州市| 吉隆县| 民县| 阿勒泰市| 会同县| 平塘县| 赞皇县| 怀宁县| 灵璧县| 虞城县| 永顺县| 商河县|