日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯網營銷解決方案
創(chuàng)新互聯OceanBase教程:OceanBaseDECODE

DECODE 函數依次用參數 search 與 condition 做比較,直至 condition 與 search 的值相等,則返回對應 search 后跟隨的參數 result 的值。如果沒有 search 與 condition 相等,則返回參數 default 的值。

創(chuàng)新互聯網站建設公司一直秉承“誠信做人,踏實做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務為基礎,以質量求生存,以技術求發(fā)展,成交一個客戶多一個朋友!專注中小微企業(yè)官網定制,成都網站建設、做網站,塑造企業(yè)網絡形象打造互聯網企業(yè)效應。

語法

DECODE (condition, search 1, result 1, search 2, result 2 ... search n, result n, default)

DECODE 函數的含義可以用 IF...ELSE IF...END 語句進行解釋:

IF condition = search 1 THEN
RETURN(result 1)
ELSE IF condition = search 2 THEN
RETURN(result 2)
......
ELSE IF condition = search n THEN
RETURN(result n)
ELSE
RETURN(default)
END IF

參數

參數

說明

condition、search 1...search n、result 1...result n、default

數值型(NUMBER、FLOAT、BINARY_FLOAT 或 BINARY_DOUBLE)或字符型( CHAR、VARCHAR2NCHAR 或 NVARCHAR2)的表達式。

注意 

search 1 ~ search n 不能為條件表達式,這種情況只能用 CASE WHEN THEN END 語句解決:

WHEN CASE condition = search 1 THEN
RETURN(result 1)
ELSE CASE condition = search 2 THEN
RETURN(result 2)
......  
ELSE CASE condition = search n THEN
RETURN(result n)
ELSE
RETURN(default)
END

示例

示例 1: 使用 DECODE 比較數值的大小。

以下語句使用 DECODE 函數來返回數值 10 與 20 當中較小的那個數。SIGN() 函數用來計算兩個值差的符號,由于 10 小于 20,所以差為負數,SIGN() 返回 -1。此時 DECODE 函數將參數 -1 與 SIGN() 函數的返回值作比較。相等時,返回值 10,不相等時,返回值 20:

SELECT DECODE(SIGN(10-20),-1,10,20) FROM DUAL;

返回結果如下:

+------------------------------+
| DECODE(SIGN(10-20),-1,10,20) |
+------------------------------+
|                           10 |
+------------------------------+

示例 2:使用 DECODE 函數查看數據中是否包含字符 S

以下語句創(chuàng)建了表 EMP,表中包含列 ename 和 sal,并向其中插入值:

CREATE TABLE EMP(ename VARCHAR(30),sal NUMBER);
INSERT INTO EMP VALUES('CLARK', 2750);       
INSERT INTO EMP VALUES('KING', 5300);       
INSERT INTO EMP VALUES('MILLER', 1600);        
INSERT INTO EMP VALUES('ADAMS', 1400);       
INSERT INTO EMP VALUES('FORD', 3300);      
INSERT INTO EMP VALUES('JONES', 3275);      
INSERT INTO EMP VALUES('SCOTT', 3300);    
INSERT INTO EMP VALUES('SMITH', 1100);   
INSERT INTO EMP VALUES('ALLEN', 1900); 
INSERT INTO EMP VALUES('BLAKE', 3150); 
INSERT INTO EMP VALUES('JAMES', 1250);  
INSERT INTO EMP VALUES('MARTIN', 1550);
INSERT INTO EMP VALUES('TURNER', 1800);
INSERT INTO EMP VALUES('WARD', 1550);

以下語句通過函數 INSTR() 返回字符 S 在列 ename 的值中出現的位置,若沒有出現過則返回 0。此時 DECODE 函數將 INSTR 函數的返回值與 0 做比較,相等時說明字符 S 在值中沒有出現過,則 DECODE 函數返回值 不含有 S,否則返回值 含有 S :

SELECT ENAME, SAL, DECODE(INSTR(ename, 'S'), 0, '不含有 S', '含有 S') AS INFO FROM EMP;

查詢結果如下:

+--------+------+------------+
| ENAME  | SAL  | INFO       |
+--------+------+------------+
| CLARK  | 2750 | 不含有 S    |
| KING   | 5300 | 不含有 S    |
| MILLER | 1600 | 不含有 S    |
| ADAMS  | 1400 | 含有 S      |
| FORD   | 3300 | 不含有 S    |
| JONES  | 3275 | 含有 S      |
| SCOTT  | 3300 | 含有 S      |
| SMITH  | 1100 | 含有 S      |
| ALLEN  | 1900 | 不含有 S    |
| BLAKE  | 3150 | 不含有 S    |
| JAMES  | 1250 | 含有 S      |
| MARTIN | 1550 | 不含有 S    |
| TURNER | 1800 | 不含有 S    |
| WARD   | 1550 | 不含有 S    |
+--------+------+------------+

文章標題:創(chuàng)新互聯OceanBase教程:OceanBaseDECODE
當前URL:http://www.5511xx.com/article/cdgsgsi.html