結果集集合操作(待更新)
Union:對兩個結果集進行並集操作,不包括重複行,同時進行預設規則的排序;
Union All:對兩個結果集進行並集操作,包括重複行,不進行排序;
Intersect:對兩個結果集進行交集操作,不包括重複行,同時進行預設規則的排序;
Minus:對兩個結果集進行差操作,不包括重複行,同時進行預設規則的排序。
可以在最後一個結果集中指定Order by子句改變排序方式。
例如:
select employee_id,job_id from employees
union
select employee_id,job_id from job_history
以上將兩個表的結果聯合在一起。這兩個例子會將兩個select語句的結果中的重複值進行壓縮,也就是結果的資料並不是兩條結果的條數的和。如果希望即使重複的結果顯示出來可以使用union all,例如:
2.在oracle的scott使用者中有表emp
select * from emp where deptno >= 20
union all
select * from emp where deptno <= 30
這裡的結果就有很多重複值了。
有關union和union all關鍵字需要注意的問題是:
union 和 union all都可以將多個結果集合並,而不僅僅是兩個,你可以將多個結果集串起來。
使用union和union all必須保證各個select 集合的結果有相同個數的列,並且每個列的型別是一樣的。但列名則不一定需要相同,oracle會將第一個結果的列名作為結果集的列名。例如下面是一個例子:
select empno,ename from emp
union
select deptno,dname from dept
我們沒有必要在每一個select結果集中使用order by子句來進行排序,我們可以在最後使用一條order by來對整個結果進行排序。例如:
select empno,ename from emp
union
select deptno,dname from dept
order by ename
相關文章
- iOS FMDB有返回結果集和無返回結果集iOS
- NET 集合交集、並集、差集操作
- 結果集 (ResultSet)全面解析
- "對只轉髮結果集的無效操作: first" - 異常
- PLSQL Language Referenc-PL/SQL集合和記錄-集合變數賦值-將集合操作結果賦給巢狀表SQL變數賦值巢狀
- MongoDB 集合的插入、更新、刪除操作MongoDB
- Sql_從查詢的結果集中分組後取最後有效的資料成新的結果集小記(待優化)SQL優化
- PHP PDO獲取結果集PHP
- Python集合操作總結Python
- Mybatis 查詢語句結果集總結MyBatis
- MySQL in UnionAll結果集的優化MySql優化
- 巧用臨時表將大結果集轉換為小結果集驅動查詢薦
- 使用查詢結果更新表的方法
- exp匯出操作結果判斷
- Mybatis使用小技巧-自定義結果集MyBatis
- MySQL EXPLAIN結果集分析 - 附帶大量案例MySqlAI
- PostgreSQL函式:返回表查詢結果集SQL函式
- oracle result cache 結果集快取的使用Oracle快取
- Oracle中過程/函式返回結果集Oracle函式
- Oracle 儲存過程返回結果集|轉|Oracle儲存過程
- JDBC泛型類反射封裝結果集JDBC泛型反射封裝
- Oracle 儲存過程返回結果集 (轉)Oracle儲存過程
- DBeaver 匯出多個查詢結果集
- Laravel 手動建立分頁返回物件結果集Laravel物件
- RowSet離線結果集物件的使用詳解物件
- Mybatis 強大的結果集對映器resultMapMyBatis
- MySQL中如何橫向顯示結果集薦MySql
- 11g新特性之結果集快取快取
- mysql根據查詢結果批量更新多條資料(插入或更新)MySql
- Java集合類操作優化經驗總結Java優化
- Python集合(set)型別的操作總結Python型別
- DDL,DML操作對結果快取的影響快取
- Oracle 集合操作Oracle
- 【Python】轉換mysql 結果集為詞典型別PythonMySql型別
- Oracle11新特性——SQL快取結果集(五)OracleSQL快取
- 使用ROWNUM將導致查詢結果集的固化
- Oracle11新特性——SQL快取結果集(三)OracleSQL快取
- JAVA + Oracle儲存過程返回查詢結果集JavaOracle儲存過程