Oracle 資料庫/SELECT 語句
外觀
SELECT 語句從資料庫中檢索資料。使用 SELECT 語句,您可以使用以下功能
- 投影:選擇查詢返回的表中的列。
- 選擇:使用某些條件來限制結果,選擇查詢返回的表中的行。
- 連線:透過指定它們之間的連結,將儲存在不同表中的資料組合在一起。
SELECT *|{[DISTINCT] column|expression [[AS] alias],...}
FROM table;
- SQL 語句不區分大小寫。
- SQL 語句可以輸入在一行或多行上。
- SELECT、FROM 等關鍵字不能縮寫或拆分到多行。
- 在 SQL Developer 中,SQL 語句可以選擇性地用分號 (;) 終止。當您執行多個 SQL 語句時,分號是必需的。
- 在 SQL*Plus 中,您需要在每個 SQL 語句的末尾用分號 (;) 結尾。
- 選擇所有列
SELECT *
FROM hr.employees;
- 選擇特定列
SELECT employee_id, last_name, hire_date
FROM hr.employees;
- 排除重複行
SELECT DISTINCT last_name
FROM hr.employees;
- 使用算術運算子
- 運算子優先順序與普通數學相同,(即。/ * + -)
- 包含空值的算術表示式計算結果為空
SELECT last_name, salary, (salary+100-20)*105/100
FROM hr.employees;
- 使用列標題預設值
- SQL Developer
- 預設標題顯示:大寫
- 預設標題對齊方式:左對齊
- SQL*Plus
- 預設標題顯示:大寫
- 字元和日期列標題:左對齊
- 數字列標題:右對齊
- SQL Developer
- 使用列別名
- 重新命名列標題
- 列名和別名之間的 AS 關鍵字是可選的
- 如果包含空格、特殊字元或區分大小寫,則需要雙引號
SELECT last_name AS name, commission_pct comm, salary*12 "Annual Salary"
FROM hr.employees;
- 文字字元字串
- 日期和字元文字值必須用單引號括起來
- 每個字元字串都會為返回的每一行輸出一次
SELECT last_name || ' annually earns ' || salary*12
FROM hr.employees;
- 轉義單引號字元,使用兩個單引號
SELECT last_name || '''s employee no is ' || employee_id
FROM hr.employees;
- 轉義單引號字元,使用備用引號 (q) 運算子
SELECT last_name || q'<'s employee no is >' || employee_id
FROM hr.employees;
- 瞭解 DESCRIBE 命令以顯示錶結構
DESC[RIBE] table
隱式資料型別轉換
當 Oracle 嘗試將與函式定義的引數不匹配的值轉換為所需資料型別時,會發生隱式轉換。
顯式資料型別轉換 顯式轉換髮生在呼叫 TO_CHAR 等函式以更改值的資料型別時。
- 巢狀多個函式
- 將 NVL、NULLIF 和 COALESCE 函式應用於資料
- 在 SELECT 語句中使用條件 IF THEN ELSE 邏輯
- 描述單行函式和多行函式之間的區別
單行函式每行返回一個結果。
單行函式
Manipulate data items Accept arguments and return one value Act on each row that is returned Return one result per row May modify the data type Can be nested Accept arguments that can be a column or an expression
字元函式
Case manipulation functions LOWER UPPER INITCAP
- 使用 SELECT 和 WHERE 子句中的字元函式操作字串
- 使用 ROUND、TRUNC 和 MOD 函式運算元字
- 使用日期資料執行算術運算
- 使用日期函式操作日期
| 本節是一個存根。 您可以透過 擴充套件它 來幫助 Wikibooks。 |
| 本節是一個存根。 您可以透過 擴充套件它 來幫助 Wikibooks。 |