最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Oracle中case?when函數(shù)的用法

 更新時(shí)間:2022年05月05日 17:20:19   作者:springsnow  
這篇文章介紹了Oracle中case?when函數(shù)的用法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、case when 的基本用法見:

PL/SQL 使用控制流程

二、case when在select語句中的用法

SELECT grade, COUNT (CASE WHEN sex = 1 THEN 1   ELSE NULL   END) 男生數(shù),
              COUNT (CASE WHEN sex = 2 THEN 1   ELSE NULL   END) 女生數(shù)
FROM students
GROUP BY grade;

1、在Case函數(shù)中,可以使用BETWEEN,LIKE,IS NULL,IN,EXISTS等。

Case函數(shù)不同于DECODE函數(shù)。在Case函數(shù)中,可以使用BETWEEN,LIKE,IS NULL,IN,EXISTS等等。比如說使用IN,EXISTS,可以進(jìn)行子查詢,從而 實(shí)現(xiàn)更多的功能。

SELECT keyCol, CASE WHEN keyCol IN ( SELECT keyCol FROM tbl_B )  THEN 'Matched' ELSE 'Unmatched' END Label 
FROM tbl_A;

也可以使用NOT IN和NOT EXISTS,但是這個(gè)時(shí)候要注意NULL的情況。

2、根據(jù)條件有選擇的UPDATE。

UPDATE PersonnelSET salary =
CASE WHEN salary >= 5000                   THEN salary * 0.9 
     WHEN salary >= 2000 AND salary < 4600  THEN salary * 1.15 
ELSE salary END;

三、case when在where語句中的用法

SELECT * FROM   TB_Test
WHERE  stateid IN ( 10, 20 )
       AND ( CASE  WHEN stateid = 20 AND userid <> 2 THEN 0
                   ELSE 1 
              END ) = 1

四、case when在group by 語句中的用法(不常用)

SELECT 
CASE WHEN salary <= 500 THEN '1' 
WHEN salary > 500 AND salary <= 600  THEN '2' 
WHEN salary > 600 AND salary <= 800  THEN '3' 
ELSE NULL END salary_class, -- 別名命名
COUNT(*)  FROM    Table_A 
GROUP BY 
CASE WHEN salary <= 500 THEN '1' 
WHEN salary > 500 AND salary <= 600  THEN '2' 
WHEN salary > 600 AND salary <= 800  THEN '3' 
ELSE NULL END;

到此這篇關(guān)于Oracle中case when函數(shù)用法的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Oracle中實(shí)現(xiàn)行列互轉(zhuǎn)的方法分享

    Oracle中實(shí)現(xiàn)行列互轉(zhuǎn)的方法分享

    這篇文章主要為大家總結(jié)了Oracle中實(shí)現(xiàn)行列互轉(zhuǎn)的簡單方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-06-06
  • oracle查看執(zhí)行最慢與查詢次數(shù)最多的sql語句

    oracle查看執(zhí)行最慢與查詢次數(shù)最多的sql語句

    這篇文章主要給大家介紹了oracle查看執(zhí)行最慢與查詢次數(shù)最多的sql語句,文中給出完整的示例代碼,相信對大家的學(xué)習(xí)或者工作具有一定的參考價(jià)值,有需要的朋友們下面來一起看看吧。
    2017-01-01
  • Oracle數(shù)據(jù)庫中的觸發(fā)器詳解

    Oracle數(shù)據(jù)庫中的觸發(fā)器詳解

    這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫中觸發(fā)器的相關(guān)資料,觸發(fā)器也是保護(hù)數(shù)據(jù)完整性的一種重要方法,于存儲(chǔ)過程不同的是,觸發(fā)器是通過事件進(jìn)行觸發(fā)被執(zhí)行,存儲(chǔ)過程需要被調(diào)用執(zhí)行,需要的朋友可以參考下
    2024-02-02
  • Oracle數(shù)據(jù)庫密碼重置、導(dǎo)入導(dǎo)出庫命令示例應(yīng)用

    Oracle數(shù)據(jù)庫密碼重置、導(dǎo)入導(dǎo)出庫命令示例應(yīng)用

    本節(jié)主要介紹了Oracle數(shù)據(jù)庫密碼重置、導(dǎo)入導(dǎo)出庫命令的基本使用,有需要的朋友可以學(xué)習(xí)下
    2014-07-07
  • oracle表的簡單操作步驟

    oracle表的簡單操作步驟

    這篇文章主要介紹了oracle表的簡單操作步驟,需要的朋友可以參考下
    2017-06-06
  • 解決Oracle賬戶被鎖定的問題

    解決Oracle賬戶被鎖定的問題

    這篇文章主要介紹了解決Oracle賬戶被鎖定的問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • oracle安裝出現(xiàn)亂碼等相關(guān)問題

    oracle安裝出現(xiàn)亂碼等相關(guān)問題

    oracle安裝過程中出現(xiàn)亂碼等一系列相關(guān)問題,本文將介紹如何解決,需要了解的朋友可以參考下
    2012-11-11
  • 使用sqlplus連接Oracle數(shù)據(jù)庫問題

    使用sqlplus連接Oracle數(shù)據(jù)庫問題

    這篇文章主要介紹了使用sqlplus連接Oracle數(shù)據(jù)庫問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 在Linux下安裝Oracle

    在Linux下安裝Oracle

    在Linux下安裝Oracle...
    2007-03-03
  • oracle12C安裝步驟(圖文詳解)

    oracle12C安裝步驟(圖文詳解)

    這篇文章主要介紹了oracle12C安裝步驟(圖文詳解),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09

最新評論

钟山县| 神农架林区| 汉阴县| 梅州市| 洪泽县| 桃园县| 六安市| 论坛| 平潭县| 台中市| 涿州市| 乌鲁木齐市| 沧州市| 广宗县| 南宫市| 西城区| 锡林浩特市| 神农架林区| 德庆县| 莎车县| 丹巴县| 辉县市| 石屏县| 许昌市| 宾阳县| 保靖县| 如东县| 日土县| 诏安县| 花莲市| 新和县| 凤凰县| 本溪市| 荔波县| 孟津县| 监利县| 蕉岭县| 嘉黎县| 武鸣县| 罗甸县| 江口县|