Oracle SQL 入門
Hadrien Lacroix
Content Developer
資料型別決定欄位可包含的資料類型。
| 數值資料 | 文字資料 | 日期資料 | |
|---|---|---|---|
AVG |
x | ||
SUM |
x | ||
MIN |
x | x | x |
COUNT |
x | x | x |
轉換函式 可將欄位從一種資料型別轉為另一種
SQL 會自動轉換資料型別
SELECT 'Track length: ' || Milliseconds
FROM Track
| 'Track length: ' || Milliseconds |
|--------------------------------------|
| Track length: 343719 |
| Track length: 342562 |
| ... |

使用 TO_CHAR 將「數值」字串轉為文字格式:
SELECT UnitPrice, TO_CHAR(UnitPrice, '$999.99')
FROM InvoiceLine
| UnitPrice | TO_CHAR(UnitPrice, '$9.99') |
|-------------|-----------------------------|
| 0.99 | $0.99 |
| 1.99 | $1.99 |
| ... | ... |
$:浮動美元符號.:小數點位置9:數字位置;9 的數量決定顯示寬度0:前置補零,:千分位逗號位置使用 TO_CHAR 將「日期」字串轉為文字格式:
SELECT TO_CHAR(BirthDate, 'DD-MON-YYYY')
FROM Employee
| TO_CHAR(BirthDate, 'DD-MON-YYYY') |
|-----------------------------------|
| 19-SEP-1947 |
| ... |
YYYY:4 位數年份YEAR:英文年份全拼MM:2 位數月份MONTH:英文月份全名MON:英文月份 3 字母縮寫DY:英文星期 3 字母縮寫DAY:英文星期全名DD:月份中的日期(數字)使用 TO_NUMBER 將文字字串轉為數值格式:
SELECT TO_NUMBER('$15,000.75', '$999,999.99')
FROM DUAL
| TO_NUMBER('$15,000.75', '$999,999.99') |
|----------------------------------------|
| 15000.75 |
$:浮動美元符號.:小數點位置9:數字位置;9 的數量決定顯示寬度0:前置補零,:千分位逗號位置使用 TO_DATE 將文字字串轉為日期格式:
SELECT TO_DATE('2016-01-31','YYYY-MM-DD')
FROM DUAL
| TO_DATE('2016-01-31','YYYY-MM-DD') |
|----------------------------------------|
| 31-JAN-16 |
YYYY:4 位數年份YEAR:英文年份全拼MM:2 位數月份MONTH:英文月份全名MON:英文月份 3 字母縮寫DY:英文星期 3 字母縮寫DAY:英文星期全名DD:月份中的日期(數字)
Oracle SQL 入門