ORACLE_OCP之SQL_子查詢
ORACLE_OCP之SQL_子查詢
- 子查詢語法:
- 子查詢(內部查詢)在主查詢(外部查詢)之前執行
- 子查詢的結果由主查詢使用
- 子查詢的規則和準則:
- 將子查詢括在括號中
- 將子查詢放在比較條件的右側,以提高可讀性,(但是,子查詢可以出現在比較運算子的任何一側)
- 將單行運算子用於單行子查詢,將多行運算子用於多行子查詢
//栗子:找出入職日期大於Davies入職日期的人
SELECT * FROM EMPLOYEES WHERE HIRE_DATE > (SELECT HIRE_DATE FROM EMPLOYEES WHERE LAST_NAME=‘Davies’);
-
單行子查詢:
- 只返回一行
- 使用單行比較運算子
-
子查詢中的HAVING子句
- Oracle伺服器首先執行子查詢
- Oracle伺服器將結果返回到主查詢的HAVING子句中
SELECT department_id, MIN(salary)
FROM employees
GROUP BY department_id
HAVING MIN(salary) >
(SELECT MIN(salary)
FROM employees
WHERE department_id = 30); -
多行子查詢:
- 返回多行
- 使用多行比較運算子
-
多列子查詢
- 多列子查詢將多個列返回到外部查詢
- 多列比較中的列比較可以成對或非成對
- 也可以在SELECT語句的FROM子句中使用多列子查詢
//栗子:顯示每個部門中薪水最低的所有員工
SELECT first_name, department_id, salary
FROM employees
WHERE (salary, department_id) IN
(SELECT min(salary), department_id
FROM employees
GROUP BY department_id)
ORDER BY department_id;
相關文章
- MySQL之連線查詢和子查詢MySql
- 子查詢-表子查詢
- 複雜查詢—子查詢
- SQL查詢的:子查詢和多表查詢SQL
- 相關子查詢&非相關子查詢概念
- MySQL子查詢MySql
- 子串查詢
- 使用子查詢
- MYsql 子查詢MySql
- oracle子查詢Oracle
- 查詢子串
- 子查詢分解
- 11子查詢
- sql子查詢SQL
- informix子查詢ORM
- MySQL聯結查詢和子查詢MySql
- select查詢之三:子查詢
- NOT IN之後的子查詢不能包含NULL值Null
- SQL入門之4 group by 與子查詢SQL
- OCP課程8:SQL之使用子查詢SQL
- mysql-分組查詢-子查詢-連線查詢-組合查詢MySql
- 區分關聯子查詢和非關聯子查詢
- sql語法相關子查詢與非相關子查詢SQL
- exist-in和關聯子查詢-非關聯子查詢
- MySQL exists關聯子查詢SQL效能及其低下最佳化之等值子查詢轉換MySql
- 查詢之折半查詢
- 巢狀子查詢巢狀
- GORM subquery 子查詢GoORM
- SQL--子查詢SQL
- Oracle with重用子查詢Oracle
- oracle with 子查詢用法Oracle
- select子查詢
- mysql的子查詢MySql
- Javaweb-子查詢JavaWeb
- SQL筆記之 子查詢080812SQL筆記
- MYSQL學習筆記25: 多表查詢(子查詢)[標量子查詢,列子查詢]MySql筆記
- Oracle查詢轉換(五)子查詢展開Oracle
- 關聯查詢子查詢效率簡單比照