国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Oracle-Decode()函數和CASE語句有哪些不同

瀏覽:217日期:2023-11-27 14:41:56
Oracle-Decode()函數和CASE語句的區別:

具體示例如下:

1.CASE語句:

SELECT CASE SIGN(5 - 5)

WHEN 1 THEN 'Is Positive'

WHEN -1 THEN 'Is Negative'

ELSE 'Is Zero' END

FROM DUAL;

后臺實現:

if (SIGN(5 – 5) = 1) {

'Is Positive';

} else if (SIGN(5 – 5) = 2 ) {

'Is Negative';

}else {

‘Is Zero’

}

2. Decode函數:

SELECT DECODE(SIGN(5 – 5), 1, 'Is Positive', -1, 'Is Negative', ‘Is Zero’)

FROM DUAL

后臺實現:

switch ( SIGN(5 – 5) )

{

case 1 : 'Is Positive'; break;

case 2 : 'Is Negative'; break;

default : ‘Is Zero’

}

雖然在上面的示例中,兩者看似都可以實現。但在遇到特殊情況時,Decode()的實現就相對復雜得多了。

例如:

SELECT CASE X-FIELD

WHEN X-FIELD < 40 THEN ‘X-FIELD < 40’

WHEN X-FIELD < 50 THEN ‘X-FIELD < 50’

WHEN X-FIELD < 60 THEN ‘X-FIELD < 60’

ELSE ‘UNBEKNOWN’END

FROM DUAL

相對而言,CASE語句在處理相似問題就顯得比較簡捷靈活。另外,當需要匹配少量數值時,選用Decode會更加方便一些。

標簽: Oracle 數據庫
主站蜘蛛池模板: 揭阳市| 志丹县| 长顺县| 泰兴市| 台东县| 仙居县| 神木县| 洪雅县| 德令哈市| 扶沟县| 景洪市| 沾化县| 保定市| 阆中市| 保德县| 高密市| 玛沁县| 红桥区| 颍上县| 南岸区| 丰镇市| 天柱县| 广饶县| 镇巴县| 文安县| 天峨县| 汾阳市| 宁蒗| 宁海县| 安溪县| 五台县| 河池市| 双辽市| 芦溪县| 个旧市| 蛟河市| 兰考县| 武邑县| 集安市| 北宁市| 甘孜县|