15 單行處理函式

2022-09-13 08:51:06 字數 1408 閱讀 8505

15 單行處理函式

什麼是單行處理函式?

輸入一行,輸出一行。

計算每個員工的年薪?

select ename,(sal + comm) * 12 as yearsal from emp;

重點:所有資料庫都是這樣規定的,只要有null參與的運算結果一定是null。

使用ifnull函式

select ename,(sal + ifnull(comm,2)) * 12 as yearsal from emp;

+--------+----------+

| ename  | yearsal  |

+--------+----------+

| smith  |  9624.00 |

| allen  | 22800.00 |

| ward   | 21000.00 |

| jones  | 35724.00 |

| martin | 31800.00 |

| blake  | 34224.00 |

| clark  | 29424.00 |

| scott  | 36024.00 |

| king   | 60024.00 |

| turner | 18000.00 |

| adams  | 13224.00 |

| james  | 11424.00 |

| ford   | 36024.00 |

| miller | 15624.00 |

+--------+----------+

ifnull() 空處理函式?

ifnull(可能為null的資料,被當做什麼處理):屬於單行處理函式。

select ename,ifnull(comm,0) as comm from emp;

+--------+---------+

| ename  | comm    |

+--------+---------+

| smith  |    0.00 |

| allen  |  300.00 |

| ward   |  500.00 |

| jones  |    0.00 |

| martin | 1400.00 |

| blake  |    0.00 |

| clark  |    0.00 |

| scott  |    0.00 |

| king   |    0.00 |

| turner |    0.00 |

| adams  |    0.00 |

| james  |    0.00 |

| ford   |    0.00 |

| miller |    0.00 |

+--------+---------+

oracle單行函式

1.字元函式 upper 全大寫 lower 全小寫 initcap 首字母大寫 length 取長度 substr 擷取字串 replace 替換 2.數值函式 round 四捨五入 trunc 擷取 mod 取餘 3.日期函式 當前日期 sysdate 日期 數字 日期 日期 數字 日期 日期 ...

oracle單行函式

單行函式 函式類別 單行 返回單個結果 substr,length 多行 返回多個結果,any,all 單行的分類 字元類,日期類,數字類,轉換類,通用類 1.字元類 轉換大小寫 lower 轉換為小寫 select ename,lower ename from emp upper 轉換為大寫 se...

Oracle單行函式

單行函式 運算元據物件,接受引數返回乙個結果,只對一行進行變換,每行返回乙個結果,可以轉換資料型別,可以巢狀,引數可以是一列或乙個值 一 字元函式 concat 字串連線,相當於 initcap 將引數的第乙個字母變為大寫 lower 將引數轉換為全部小寫字母 upper 將引數轉換為全部大寫字母 ...