内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

SQL中casewhen怎么用

這篇文章將為大家詳細(xì)講解有關(guān)SQL中case when怎么用,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

目前創(chuàng)新互聯(lián)已為1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機(jī)、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、黔西南州網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶(hù)導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶(hù)和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

SQL中case when的用法

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ù)在滿(mǎn)足了某個(gè)符合條件后,剩下的條件將會(huì)被自動(dòng)忽略,因此,即使?jié)M足多個(gè)條件,執(zhí)行過(guò)程中也只認(rèn)第一個(gè)條件。

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

使用場(chǎng)景

1、可以將已知數(shù)據(jù)按照某種方式進(jìn)行分組,分析。

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值并不用寫(xiě)明是什么洲,它只是用于將記錄進(jìn)行分組,所以THEN后面的值只有能區(qū)分這三種記錄就行,GROUP BY也可以寫(xiě)成:

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ǔ)句完成不同條件的分組。

有如下數(shù)據(jù):

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ó)家的男性人口。

關(guān)于“SQL中case when怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

分享名稱(chēng):SQL中casewhen怎么用
當(dāng)前地址:http://www.rwnh.cn/article40/jdcgeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)面包屑導(dǎo)航、品牌網(wǎng)站設(shè)計(jì)、Google、網(wǎng)站導(dǎo)航、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
双峰县| 福泉市| 大田县| 长春市| 泽库县| 溆浦县| 萨迦县| 丹阳市| 广饶县| 博野县| 连江县| 冀州市| 内乡县| 玉环县| 溆浦县| 和平县| 涡阳县| 连城县| 财经| 娱乐| 牙克石市| 嘉定区| 杭州市| 霍城县| 郎溪县| 义乌市| 新泰市| 邢台县| 鹤山市| 宜章县| 寻甸| 民权县| 新巴尔虎右旗| 泰兴市| 千阳县| 容城县| 封开县| 荆州市| 金溪县| 金平| 天水市|