中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle中decode怎么用

發布時間:2021-11-25 09:30:49 來源:億速云 閱讀:177 作者:小新 欄目:關系型數據庫

小編給大家分享一下Oracle中decode怎么用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

語法結構如下:
decode (expression, sch_1, res_1)
decode (expression, sch_1, res_1, sch_2, res_2)
decode (expression, sch_1, res_1, sch_2, res_2, ...., sch_n, res_n)
decode (expression, sch_1, res_1, default)
decode (expression, sch_1, res_1, sch_2, res_2, default)
decode (expression, sch_1, res_1, sch_2, res_2, ...., sch_n, res_n, default)
比較表達式和搜索字,如果匹配,返回結果;如果不匹配,返回default值;如果未定義default值,則返回空值。

select name,sub,decode(sub, 'chinese',score,0) from student_score;
decode函數的功能在于它不但可以判斷常值,同樣可以判斷字段.以上語句:
當科目為chinese時,選擇score字段對應的值,而非chinese科目,其對應的score值都為0

select name,
sum(decode(subject, 'Chinese', nvl(score, 0), 0)) "Ch",
sum(decode(subject, 'Mathematics', nvl(score, 0), 0)) "Math",
sum(decode(subject, 'English', nvl(score, 0), 0)) "En"
from xxx group by name;   ---行轉列

decode函數同樣可以當做條件使用,如: where score= decode(subject, 'Chinese',score)

等同于以下case when

select name,
sum(case when subject='Ch'
then nvl(score,0)
else 0
end) "Ch",
sum(case when subject='Math'
then nvl(score,0)
else 0
end) "Math",
sum(case when subject='En'
then nvl(score,0)
else 0
end) "En"
from xxx group by name;

看完了這篇文章,相信你對“Oracle中decode怎么用”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

惠安县| 韩城市| 东阿县| 岳普湖县| 金塔县| 洛隆县| 宝鸡市| 蒲江县| 肥西县| 和田市| 海宁市| 白沙| 饶平县| 金秀| 茶陵县| 班玛县| 阿拉善盟| 资中县| 右玉县| 常熟市| 望谟县| 保山市| 广东省| 乌鲁木齐县| 集安市| 东丽区| 拜城县| 德昌县| 新龙县| 衢州市| 邢台市| 刚察县| 闽侯县| 勃利县| 玛多县| 句容市| 秀山| 武陟县| 阿拉善右旗| 酒泉市| 塘沽区|