MySql nion與Limit查詢介紹
1. union合並查詢結果集
查詢工作崗位是 MANAGER 和 SALESMAN 的員工?
mysql> select ename, job from emp where job = 'MANAGER' or job = 'SALESMAN';
mysql> select ename, job from emp where job in('MANAGER', 'SALESMAN');
mysql> select ename, job from emp where job = 'MANAGER' union select ename, job from emp where job = 'SALESMAN';
union 的效率要高一些。
對於表的連接,每一次連接新表,則匹配的次數滿足笛卡爾積,成倍的翻…
但是 union 可以減少匹配的次數。在減少匹配次數的情況下,還可以完成兩個結果集的拼接。
a 連接 b 一個結果:10 * 10 –> 100
a 連接 c 一個結果:10 * 10 –> 100
使用 union 的話:100 + 100 –> 200
註意事項:
- 使用 union 進行結果集合並,要求兩個結果集的列數相同。
- 兩個結果的列的數據類型也要一致(mysql不要求一致)
2. limit分頁查詢
limit 作用:將查詢結果集的一部分取出來。通常使用在分頁查詢當中。
按照薪資降序,取出排名在前5名的員工?
mysql> select ename, sal from emp order by sal desc limit 5;
mysql> select ename, sal from emp order by sal desc limit 2, 3;
2:從第三個開始(下標從0開始)
3:三個數據
註意:mysql 中 limit 在 order by 之後執行!!!
到此這篇關於MySql nion與Limit查詢介紹的文章就介紹到這瞭,更多相關MySql Union Limit內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- MySQL數據庫之union,limit和子查詢詳解
- MySQL數據庫學習之排序與單行處理函數詳解
- MySQL數據庫學習之查詢操作詳解
- MySQL數據庫學習之分組函數詳解
- mysql語法之DQL操作詳解