## 聯合查詢
#### 基本概念
1. 聯合查詢是可合并多個相似的選擇查詢的結果集。等同于將一個表追加到另一個表,從而實現將兩個表的查詢組合到一起,使用謂詞為UNION或UNION ALL.
2. 將多個查詢的結果合并到一起(縱向合并):字段數不變,多個查詢的記錄數合并.
#### 應用場景
1. 將同一張表中不同的結果(需要對應多條查詢語句來實現),合并到一起展示數據男生身高升序排序,女生身高降序排序.
2. 最常見:在數據量大的情況下,會對表進行分表操作,需要對每張表進行部分數據統計,使用聯合查詢來講數據存放到一起顯示.
* QQ1表獲取在線數據
* QQ2表獲取在線數據 ---> 將所有在線的數據顯示出來
#### 語法
~~~
select 語句
union[選項]
select 語句
~~~
Union選項:與select選項基本一樣.
Distinct:去重,去掉完全重復的數據(默認的).
All:保存所有的結果.
1. 注意細節:union理論上只要保證字段數一樣,不需要每次拿到的數據對應的字段類型一致。永遠只保留第一個select語句對應的字段名字.
2. 在聯合查詢中,如果要使用order by,那么對應的select語句必須使用括號括起來.
3. orderby在聯合查詢中若要生效,必須配合使用limit:而limit后面必須跟對應的限制數量(通常可以使用一個較大的值:大于對應表的記錄數).
4. 聯合查詢中可以使用字句,但是只有使用order by的時候需要加括號.
- 數據庫介紹
- 數據庫基本概念
- SQL介紹
- MySQL服務端架構
- 庫操作
- 表操作
- 字段類型
- 整數類型
- 小數類型
- 字符串類型
- 日期/時間類型
- json類型
- 字段屬性
- Null
- 默認值
- 列描述
- 主鍵
- 自動增長
- 唯一鍵
- 數據庫基礎操作
- 增
- 刪
- 改
- 查
- 運算符
- 算術運算符
- 比較運算符
- 邏輯運算符
- in運算符
- is運算符
- like運算符
- 高級查詢
- 聯合查詢
- 連接查詢
- 交叉連接
- 內連接
- 外連接
- Using關鍵字
- 子查詢
- 標量子查詢
- 列子查詢
- 行子查詢
- 表子查詢
- exists子查詢
- 子查詢特定關鍵字
- 用戶權限管理
- 用戶管理
- 權限管理
- 外鍵
- 外鍵操作
- 外鍵基本要求
- 約束
- 視圖
- 事務安全
- 自動事務
- 手動事務
- 事務特點
- 變量
- 系統變量
- 會話變量
- 局部變量
- 流程結構
- if分支
- while循環
- 函數
- 內置函數
- 字符串函數
- 時間函數
- 數學函數
- 其他函數
- 存儲過程
- 與函數的區別
- 存儲過程操作
- 存儲過程的形參類型
- 觸發器
- 觸發器概念
- 觸發器操作