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!

推薦閱讀: