亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁(yè) 資料庫(kù) SQL SQL中Case When的用法

SQL中Case When的用法

Feb 18, 2020 pm 01:12 PM
case sql 用法

在SQL中,「Case ?When」語(yǔ)句用於選擇判斷,在執(zhí)行時(shí)先對(duì)條件進(jìn)行判斷,然後根據(jù)判斷結(jié)果做出相應(yīng)的操作;語(yǔ)法「CASE 字段WHEN 條件1 THEN 操作1 WHEN條件2 THEN 操作2...ELSE 操作n END;」。

SQL中Case When的用法

本教學(xué)操作環(huán)境:windows7系統(tǒng)、Microsoft SQL Server 2016版、Dell G3電腦。

SQL中case when的用法

case when類似程式語(yǔ)言中的if else判斷、switch case語(yǔ)句。該語(yǔ)句執(zhí)行時(shí)先對(duì)條件進(jìn)行判斷,然後根據(jù)判斷結(jié)果做出對(duì)應(yīng)的操作。

Case有兩種格式:簡(jiǎn)單Case函數(shù)和Case搜尋函數(shù)。

簡(jiǎn)單Case函數(shù):

CASE sex
WHEN ‘1’ THEN ‘男’
WHEN ‘0’ THEN ‘女’
ELSE ‘其他’ END

Case搜尋函數(shù):

CASE WHEN sex = ‘1’ THEN ‘男’
WHEN sex = ‘0’ THEN ‘女’
ELSE ‘其他’ END

顯然,簡(jiǎn)單Case函數(shù)勝在簡(jiǎn)潔,但它只適用於這種單一欄位的單值比較,而Case搜尋函數(shù)的優(yōu)點(diǎn)在於適用於所有比較的情況。

還有一個(gè)需要注意的問(wèn)題,Case函數(shù)在滿足了某個(gè)符合條件後,剩下的條件將會(huì)被自動(dòng)忽略,因此,即使?jié)M足多個(gè)條件,執(zhí)行過(guò)程中也只認(rèn)第一個(gè)條件。

(PHP中文網(wǎng),有大量免費(fèi)的SQL教學(xué),歡迎大家學(xué)習(xí)!)

在使用CASE WHEN時(shí),可以把它當(dāng)作一個(gè)邏輯上的匿名字段,字段值根據(jù)條件確認(rèn),在需要使用字段名時(shí)可以是用as來(lái)定義別名。這麼說(shuō)還很抽象,看看下面 CASE WHEN的使用案例就清楚了。

使用場(chǎng)景

1、可以將已知資料依照某種方式分組,分析。

SQL中Case When的用法

根據(jù)這個(gè)國(guó)家人口數(shù)據(jù),統(tǒng)計(jì)亞洲和北美洲的人口數(shù)。使用如下SQL:

SELECT  CASE country
WHEN '中國(guó)'     THEN '亞洲'
WHEN '印度'     THEN '亞洲'
WHEN '日本'     THEN '亞洲'
WHEN '美國(guó)'     THEN '北美洲'
WHEN '加拿大'  THEN '北美洲'
WHEN '墨西哥'  THEN '北美洲'
ELSE '其他' END as '洲' , SUM(population) as '人口'
FROM test
GROUP BY CASE country
WHEN '中國(guó)'     THEN '亞洲'
WHEN '印度'     THEN '亞洲'
WHEN '日本'     THEN '亞洲'
WHEN '美國(guó)'     THEN '北美洲'
WHEN '加拿大'  THEN '北美洲'
WHEN '墨西哥'  THEN '北美洲'
ELSE '其他' END;

SQL中Case When的用法

這裡的兩個(gè)CASE WHEN都相當(dāng)於一個(gè)字段,不過(guò)值得一提的是,第二個(gè)CASE WHEN 的THEN值不用寫明是什麼洲,它只是用來(lái)將記錄分組,所以THEN後面的值只有能區(qū)分這三種記錄就行,GROUP BY也可以寫成:

GROUP BY CASE country
WHEN '中國(guó)'     THEN 0
WHEN '印度'     THEN 0
WHEN '日本'     THEN 0
WHEN '美國(guó)'     THEN 1
WHEN '加拿大'  THEN 1
WHEN '墨西哥'  THEN 1
ELSE 2 END;

2、用一個(gè)SQL語(yǔ)句完成不同條件的分組。

有以下資料:

SQL中Case When的用法

用Case函數(shù)來(lái)完成依照國(guó)家和性別進(jìn)行分組。使用如下SQL:

SELECT country,
SUM( CASE WHEN sex = '1' THEN population ELSE 0 END  ),  --男性人口
SUM( CASE WHEN sex = '2' THEN population ELSE 0 END )   --女性人口
FROM  Table_A
GROUP BY country;

得到如下結(jié)果:

SQL中Case When的用法

#就第一個(gè)CASE WHEN講解:

CASE WHEN sex = '1' THEN
population ELSE 0 END

當(dāng)記錄的sex為1時(shí),這個(gè)字段的值為記錄的population值,否則為0,因此能計(jì)算出一個(gè)國(guó)家的男性人口。

更多SQL等程式設(shè)計(jì)入門教學(xué)課程,請(qǐng)持續(xù)關(guān)注PHP中文網(wǎng)! !? ? ? ??

#

以上是SQL中Case When的用法的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請(qǐng)聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
SQL的目的:與MySQL數(shù)據(jù)庫(kù)進(jìn)行交互 SQL的目的:與MySQL數(shù)據(jù)庫(kù)進(jìn)行交互 Apr 18, 2025 am 12:12 AM

SQL用於與MySQL數(shù)據(jù)庫(kù)交互,實(shí)現(xiàn)數(shù)據(jù)的增、刪、改、查及數(shù)據(jù)庫(kù)設(shè)計(jì)。 1)SQL通過(guò)SELECT、INSERT、UPDATE、DELETE語(yǔ)句進(jìn)行數(shù)據(jù)操作;2)使用CREATE、ALTER、DROP語(yǔ)句進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)和管理;3)複雜查詢和數(shù)據(jù)分析通過(guò)SQL實(shí)現(xiàn),提升業(yè)務(wù)決策效率。

SQL:語(yǔ)言,MySQL:數(shù)據(jù)庫(kù)管理系統(tǒng) SQL:語(yǔ)言,MySQL:數(shù)據(jù)庫(kù)管理系統(tǒng) Apr 21, 2025 am 12:05 AM

SQL和MySQL的關(guān)係是:SQL是用於管理和操作數(shù)據(jù)庫(kù)的語(yǔ)言,而MySQL是支持SQL的數(shù)據(jù)庫(kù)管理系統(tǒng)。 1.SQL允許進(jìn)行數(shù)據(jù)的CRUD操作和高級(jí)查詢。 2.MySQL提供索引、事務(wù)和鎖機(jī)制來(lái)提升性能和安全性。 3.優(yōu)化MySQL性能需關(guān)注查詢優(yōu)化、數(shù)據(jù)庫(kù)設(shè)計(jì)和監(jiān)控維護(hù)。

MySQL:SQL的實(shí)際應(yīng)用 MySQL:SQL的實(shí)際應(yīng)用 May 08, 2025 am 12:12 AM

MySQL受歡迎的原因是其性能卓越且易於使用和維護(hù)。 1.創(chuàng)建數(shù)據(jù)庫(kù)和表:使用CREATEDATABASE和CREATETABLE命令。 2.插入和查詢數(shù)據(jù):通過(guò)INSERTINTO和SELECT語(yǔ)句操作數(shù)據(jù)。 3.優(yōu)化查詢:使用索引和EXPLAIN語(yǔ)句提升性能。

SQL與MySQL:澄清兩者之間的關(guān)係 SQL與MySQL:澄清兩者之間的關(guān)係 Apr 24, 2025 am 12:02 AM

SQL是一種用於管理關(guān)係數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言,而MySQL是一個(gè)使用SQL的數(shù)據(jù)庫(kù)管理系統(tǒng)。 SQL定義了與數(shù)據(jù)庫(kù)交互的方式,包括CRUD操作,而MySQL實(shí)現(xiàn)了SQL標(biāo)準(zhǔn)並提供了額外的功能,如存儲(chǔ)過(guò)程和觸發(fā)器。

SQL和MySQL:了解關(guān)係 SQL和MySQL:了解關(guān)係 Apr 16, 2025 am 12:14 AM

SQL和MySQL的關(guān)係是標(biāo)準(zhǔn)語(yǔ)言與具體實(shí)現(xiàn)的關(guān)係。 1.SQL是用於管理和操作關(guān)係數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言,允許進(jìn)行數(shù)據(jù)的增、刪、改、查。 2.MySQL是一個(gè)具體的數(shù)據(jù)庫(kù)管理系統(tǒng),使用SQL作為其操作語(yǔ)言,並提供高效的數(shù)據(jù)存儲(chǔ)和管理。

SQL和PHPMYADMIN:初學(xué)者指南 SQL和PHPMYADMIN:初學(xué)者指南 Apr 16, 2025 am 12:02 AM

初學(xué)者可以從零開(kāi)始學(xué)習(xí)SQL和phpMyAdmin。 1)創(chuàng)建數(shù)據(jù)庫(kù)和表:在phpMyAdmin中新建數(shù)據(jù)庫(kù)並使用SQL命令創(chuàng)建表。 2)執(zhí)行基本查詢:使用SELECT語(yǔ)句從表中查詢數(shù)據(jù)。 3)優(yōu)化和最佳實(shí)踐:創(chuàng)建索引、避免使用SELECT*、使用事務(wù)和定期備份數(shù)據(jù)庫(kù)。

phpmyadmin:揭示其與SQL的關(guān)係 phpmyadmin:揭示其與SQL的關(guān)係 Apr 14, 2025 am 12:11 AM

phpMyAdmin通過(guò)SQL命令實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作。 1)phpMyAdmin通過(guò)PHP腳本與數(shù)據(jù)庫(kù)服務(wù)器通信,生成並執(zhí)行SQL命令。 2)用戶可以在SQL編輯器中輸入SQL命令進(jìn)行查詢和復(fù)雜操作。 3)性能優(yōu)化建議包括優(yōu)化SQL查詢、創(chuàng)建索引和使用分頁(yè)。 4)最佳實(shí)踐包括定期備份、確保安全性和使用版本控制。

比較SQL和MySQL:語(yǔ)法和功能 比較SQL和MySQL:語(yǔ)法和功能 May 07, 2025 am 12:11 AM

SQL和MySQL的區(qū)別與聯(lián)繫如下:1.SQL是標(biāo)準(zhǔn)語(yǔ)言,用於管理關(guān)係數(shù)據(jù)庫(kù),MySQL是基於SQL的數(shù)據(jù)庫(kù)管理系統(tǒng)。 2.SQL提供基本CRUD操作,MySQL在此基礎(chǔ)上增加了存儲(chǔ)過(guò)程、觸發(fā)器等功能。 3.SQL語(yǔ)法標(biāo)準(zhǔn)化,MySQL在某些地方有改進(jìn),如LIMIT用於限制返回行數(shù)。 4.使用示例中,SQL和MySQL的查詢語(yǔ)法略有不同,MySQL的JOIN和GROUPBY更直觀。 5.常見(jiàn)錯(cuò)誤包括語(yǔ)法錯(cuò)誤和性能問(wèn)題,MySQL的EXPLAIN命令可用於調(diào)試和優(yōu)化查詢。

See all articles