国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解

這篇具有很好參考價值的文章主要介紹了理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、基礎(chǔ)概念

  • case :表示需要處理的字段
  • when :表示條件
  • then :表示當(dāng)when執(zhí)行為true時,再執(zhí)行的語句
  • else :表示當(dāng)所有的when執(zhí)行為false時,再執(zhí)行的語句
  • end:表示 case 語句結(jié)束的結(jié)尾

二、建表語句


SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for student
-- ----------------------------
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`  (
  `name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '名字',
  `sex` int(11) NULL DEFAULT NULL COMMENT '性別,1表示為男,2表示女',
  `core` int(11) NULL DEFAULT NULL COMMENT '分?jǐn)?shù)'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of student
-- ----------------------------
INSERT INTO `student` VALUES ('張三', 1, 50);
INSERT INTO `student` VALUES ('李四', 2, 60);
INSERT INTO `student` VALUES ('王五', 2, 90);
INSERT INTO `student` VALUES ('趙六', 1, 70);

SET FOREIGN_KEY_CHECKS = 1;
  • 圖形化表格
    理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解

三、用例講解

  1. 執(zhí)行sql語句
SELECT (CASE WHEN a.`name`='張三' THEN a.core ELSE 0 END) AS '分?jǐn)?shù)' FROM student a ;
  • 結(jié)果
    理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解

  • 講解:進行匹配的是名字name,首先匹配第一行,name是等于張三,所以返回core也就是50。后面的記錄名字都不是 ‘張三’ ,所以執(zhí)行else。其實case的本質(zhì)就是通過邏輯判定生成一個新的字段,該字段可以通過as 取名。

  • 相同結(jié)果的sql語句,大家可以試著執(zhí)行一遍,寫法不同,思考邏輯一樣

SELECT (CASE a.`name` WHEN '張三' THEN a.core ELSE 0 END) AS '分?jǐn)?shù)' FROM student a ;
# 看著END后面連接了一個“分?jǐn)?shù)”,但是其實這個“分?jǐn)?shù)”和END之間是省略了AS,大家不要理解錯了。CASE語句執(zhí)行到END邏輯處理就已經(jīng)結(jié)束了
SELECT CASE a.`name` WHEN '張三' THEN a.core ELSE 0 END '分?jǐn)?shù)'  FROM student a ;
  1. 執(zhí)行一列里面進行多次匹配
SELECT (CASE WHEN a.`name`='張三' THEN a.core WHEN a.`name`='李四' THEN a.core END) AS '分?jǐn)?shù)' FROM student a ;
  • 結(jié)果
    理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解

  • 講解:進行匹配的是名字name ,當(dāng)?shù)谝粋€WHEN 通過的時候 ,這條記錄直接執(zhí)行第一個THEN 不會進入到第二個WHEN。當(dāng)?shù)谝粋€WHEN 沒通過的時候,才會進入到WHEN,多個WHEN的sql語句原理一樣。和java中的 swich case 有異曲同工之妙。

  • 驗證當(dāng)?shù)谝粋€ WHEN 通過不執(zhí)行第二個WHEN的sql例子文章來源地址http://www.zghlxwxcb.cn/news/detail-475594.html

SELECT (CASE WHEN a.`name`='張三' THEN a.core WHEN a.`name`='張三' THEN 100 END) AS '分?jǐn)?shù)' FROM student a ;
  • 結(jié)果
    理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解
  • 分析,如果會執(zhí)行第二個WHEN 的話,第一條記錄得到的值應(yīng)該為100,而不是50。
  1. 多列的匹配
SELECT (CASE WHEN a.`name`='張三' THEN a.core END) AS '張三',(CASE WHEN a.`name`='李四' THEN a.core END) AS '李四' FROM student a ;
  • 結(jié)果
    理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解
  1. 更新case使用
UPDATE student a
SET a.sex = CASE a.sex
WHEN 1 THEN
    11
WHEN 2 THEN
    22
ELSE a.sex
END
  • 結(jié)果更新每行sex 中的1變成11,2變成22。
    理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解
    理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解

參考文檔

  • 理解case when then else end 的使用

到了這里,關(guān)于理解case when then else end 的使用,基礎(chǔ)概念,建表語句,用例講解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • CASE WHEN函數(shù)語句多條件下使用詳解

    CASE WHEN函數(shù)語句多條件下使用詳解

    目錄 CASE 的兩種格式:?簡單CASE函數(shù) 和 CASE搜索函數(shù) 同時配合 SUM 以及 COUNT 方法的使用 ① SUM函數(shù) ② COUNT函數(shù) CASE WHEN函數(shù)語句,實現(xiàn)簡單CASE函數(shù)和CASE搜索函數(shù)兩種格式。 同時配合 SUM以及COUNT方法的使用 CASE 的兩種格式: ?簡單CASE函數(shù) 和 CASE搜索函數(shù) 兩種格式示例: 狀態(tài)

    2024年02月11日
    瀏覽(21)
  • SQL中case when用法詳解及使用案例

    SQL中case when用法詳解及使用案例

    Case具有兩種格式。簡單Case函數(shù)和Case搜索函數(shù)。 簡單Case函數(shù)格式: Case搜索函數(shù): case when與子查詢性能比較及優(yōu)化。 為了方便說明,我們先創(chuàng)建表,并造點數(shù)據(jù)。 統(tǒng)計亞洲和北美洲的人口數(shù)量,要求結(jié)果如下: 若第一時間沒有想到case when,我們可能會寫出下面的sql: 運行

    2024年02月15日
    瀏覽(24)
  • SQL SERVER case when的使用方法

    SQL SERVER case when的使用方法

    一、case when的使用方法 Case具有兩種格式。簡單Case函數(shù)和Case搜索函數(shù)。 第一種 格式 : 簡單Case函數(shù) : 格式說明 case 列名 when 條件值1 then 選項1 when 條件值2 then 選項2… else 默認(rèn)值 end eg: select case job_level when ‘1’ then ‘1111’ when ‘2’ then ‘1111’ when ‘3’ then ‘1111’ else ‘e

    2024年02月13日
    瀏覽(36)
  • Spring XML使用CASE WHEN處理SELECT字段

    在日常開發(fā)中,經(jīng)常會碰到需要導(dǎo)出的情況。而一些枚舉值或者狀態(tài)一般是定義成整型,這個時候需要對數(shù)據(jù)進行轉(zhuǎn)換,轉(zhuǎn)換成對應(yīng)的文本再導(dǎo)出。 在XML中用CASE WHEN來根據(jù)不同的查詢結(jié)果做不同的處理。 比如 這樣,如果學(xué)生的狀態(tài)值是1,則返回在學(xué);如果狀態(tài)值是2,則返

    2024年02月05日
    瀏覽(20)
  • hive中case when的兩種使用方法

    如下兩種的表達效果是一樣 方法一: select tm , count(tm) as times from ( select case when single_times = \\\'1\\\' then \\\'one_time\\\' when single_times = \\\'2\\\' then \\\'two_time\\\' when single_times = \\\'3\\\' then \\\'three_time\\\' when single_times = \\\'4\\\' then \\\'four_time\\\' when single_times = \\\'5\\\' then \\\'five_time\\\' else \\\'more_five\\\' end as tm from (select count(userid) si

    2023年04月11日
    瀏覽(22)
  • SQL之CASE WHEN函數(shù)語句多條件下使用詳解

    針對CASE WHEN函數(shù)語句,實現(xiàn)簡單CASE函數(shù)和CASE搜索函數(shù)兩種格式。 同時配合 SUM以及COUNT方法的使用 1、CASE 的兩種格式: ?簡單CASE函數(shù)和CASE搜索函數(shù) 兩種格式示例: 狀態(tài): state 訂單號: orderId 這兩種格式式,可以實現(xiàn)相同的功能。但是簡單CASE函數(shù)和CASE搜索函數(shù)相比,功能

    2024年02月11日
    瀏覽(37)
  • 12. Oracle中case when詳解

    12. Oracle中case when詳解

    格式: ? ? ? ? case expression ? ? ? ? when condition_01 then result_01 ? ? ? ? when condition_02 then result_02 ? ? ? ? ...... ? ? ? ? when condition_n then result_n ? ? ? ? else result_default ? ? ? ? end 表達式expression符合條件condition_01,則返回結(jié)果result_01,若該條件不滿足,則繼續(xù)往下判斷;以

    2024年02月11日
    瀏覽(16)
  • MySql中case when的用法

    case when介紹: case when語句,用于計算條件列表并返回多個可能結(jié)果表達式之一。 CASE 具有兩種格式:簡單 CASE 函數(shù)將某個表達式與一組簡單表達式進行比較以確定結(jié)果。 CASE 搜索函數(shù)計算一組布爾表達式以確定結(jié)果。 兩種格式都支持可選的 ELSE 參數(shù)。 這是代碼格式: CASE ? ?

    2024年02月16日
    瀏覽(22)
  • sql示例:case when作為where 條件

    CASE WHEN語句的結(jié)果可以作為WHERE條件和其他條件一起使用,可以根據(jù)具體的需求來靈活組合。下面分別給出多個CASE WHEN語句在不同位置的SQL示例: CASE WHEN語句在WHERE條件中作為條件之一 上述代碼中,CASE WHEN語句在WHERE條件中作為一個條件,其中condition_1和condition_2表示需要滿足

    2024年02月16日
    瀏覽(52)
  • PostgreSQL中case when與position包含用法

    對于復(fù)雜的業(yè)務(wù)場景,代碼與SQL都可以去實現(xiàn)一個場景。如果用代碼去實現(xiàn)看起來代碼會冗余,不高效,不如sql的效率與簡潔。 pgsql與mysql中case when用法幾乎一致。在SQL中,“Case When”語句用于選擇判斷,在執(zhí)行時先對條件進行判斷,然后根據(jù)判斷結(jié)果做出相應(yīng)的操作;語法

    2024年02月05日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包