基本sql語句--連接查詢


union 聯合
 
union的作用:把兩次或多次查詢結果合並起來。
 
典型案例:select good_id,good_name from good where shop_price>5000 or shop_price<20;
               select good_id,good_name from good where shop_price>5000 union select good_id,good_name from good where shop_price<20;
 
1.union的要求: 兩次查詢的列數要一致推薦:查詢的每一列,相對應的列類型也一樣。
 
     例如:select id,sum(num) from (select * from ta union select * from tb) as tmp group by id;
 
2.多次sql語句取出的列名可以不一致,此時以第一次sql的列名為准。
3.如果不同的語句中取出的行,有完全相同的值(每個列的值都相同),那么相同的行將會合並(去重復)。
   如果想不去重復,可以加all進行指定。
 
     例如:select * from ta union all select * from tb;
 
4.如果子句中有order by 或limit 等,需要加“()”進行括起來。推薦放到所有子句之后,即--對最終合並后的結果進行排序。
 
連接查詢
 
連接查詢包含:左連接(left join)、右連接(right join)、內連接(inner join)。
 
左連接:以左表為准,去右表查找數據,若在右表未找到,則用NULL補齊;(推薦使用左連接,代替右連接)
右連接:以右表為准,去左表查找數據,若在左表未找到,則用NULL補齊;
內連接:查詢左右表都有的數據,即:不要左右連接中NULL的那部分。
 
如:A left join B ==== B right join A


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM