MySQL多表操作聯合查詢與連接查詢_第1頁
MySQL多表操作聯合查詢與連接查詢_第2頁
MySQL多表操作聯合查詢與連接查詢_第3頁
MySQL多表操作聯合查詢與連接查詢_第4頁
MySQL多表操作聯合查詢與連接查詢_第5頁
已閱讀5頁,還剩25頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

主講教師:魏巍巍北京信息職業技術學院數據庫技術與應用聯合查詢與連接查詢創建采集任務01聯合查詢01目錄CONTENTS連接查詢02聯合查詢01

先定一個小目標!掌握聯合查詢的基本語法和使用聯合查詢聯合查詢:多表查詢的一種方式,在多個SELECT語句的查詢字段數相同時,合并多個查詢結果。語法格式SELECT…UNION[ALL|DISTINCT]SELECT…[UNION[ALL|DISTINCT]SELECT…];UNION:實現聯合查詢的關鍵字聯合查詢的選項:ALL表示保留所有查詢結果;DISTINCT默認值表示去除完全重復的記錄聯合查詢案例:聯合查詢的使用代碼示例mysql>SELECT`id`,`name`,`price`FROM`my_goods`WHERE`category_id`=9->UNION->SELECT`id`,`name`,`keyword`FROM`my_goods`WHERE`category_id`=6;+----+---------+----------+|id|name|price|+----+---------+----------+|7|頭戴耳機|109.00||5|智能手機|電子產品|+----+---------+----------+聯合查詢

先定一個小目標!掌握使用聯合查詢排序的方式聯合查詢實現方式:使用圓括號()包裹SELECT語句,在SELECT語句內或在聯合查詢的最后添加ORDERBY語句,在ORDERBY后添加LIMIT限定聯合查詢排序的數量,推薦使用大于表記錄數的任意值。代碼示例mysql>(SELECT`id`,`name`,`price`FROM`my_goods`WHERE`category_id`<>3->ORDERBY`price`DESCLIMIT7)->UNION->(SELECT`id`,`name`,`price`FROM`my_goods`WHERE`category_id`=3->ORDERBY`price`ASCLIMIT3);聯合查詢連接查詢02

先定一個小目標!掌握交叉連接的概念掌握交叉連接的語法格式掌握交叉連接的使用連接查詢交叉連接:返回被連接的兩個表中所有數據行的乘積。表13個字段、4條記錄表25個字段、10條記錄交叉連接結果:3+5個字段、4×10條記錄連接查詢語法格式SELECT查詢字段FROM表1CROSSJOIN表2;代碼示例mysql>SELECTc.`id`cid,c.`name`cname,g.`id`gid,g.`name`gname->FROM`my_goods_category`ASc->CROSSJOIN`my_goods`ASg;連接查詢

先定一個小目標!掌握內連接的概念掌握內連接的語法格式掌握內連接的使用連接查詢內連接:根據匹配條件返回第1個表與第2個表所有匹配成功的記錄。結果:3條記錄連接查詢語法格式SELECT查詢字段FROM表1[INNER]JOIN表2ON匹配條件;代碼示例mysql>SELECTg.`id`gid,g.`name`gname,c.`id`cid,c.`name`cname->FROM`my_goods`gJOIN`my_goods_category`c->ONg.`category_id`=c.`id`;連接查詢

先定一個小目標!掌握左外連接的概念、語法格式和使用掌握右外連接的概念、語法格式和使用連接查詢結果:左表中的記錄和交集部分左外連接左外連接:也稱左連接,返回連接關鍵字(LEFTJOIN)左表的所有記錄和右表符合連接條件的記錄。左表右表連接查詢語法格式SELECT查詢字段FROM表1LEFT[OUTER]JOIN表2ON匹配條件;代碼示例mysql>SELECTg.`id`gid,g.`name`gname,c.`id`cid,c.`name`cname->FROM`my_goods`gLEFTJOIN`my_goods_category`c->ONg.`category_id`=c.`id`ANDg.`score`=5;連接查詢結果:右表中的記錄和交集部分右外連接右外連接:也稱右連接,返回連接關鍵字(RIGHTJOIN)右表所有的記錄和左表符合連接條件的記錄。右表左表連接查詢語法格式SELECT查詢字段FROM表1RIGHT[OUTER]JOIN表2ON匹配條件;代碼示例mysql>SELECTg.`id`gid,g.`name`gname,c.`id`cid,c.`name`cname->FROM`my_goods`gRIGHTJOIN`my_goods_category`c->ONc.`id`=g.`category_id`ANDg.`score`=5;連接查詢

先定一個小目標!掌握自然連接的概念掌握自然連接的語法格式掌握自然連接的使用連接查詢語法格式SELECT查詢字段FROM表1NATURALJOIN表2;自然連接:包含自然內連接(NATURALJOIN)和自然外連接,自動尋找連接條件。連接查詢案例:自然連接代碼示例mysql>CREATETABLE`my_student`(->`id`int(11)NOTNULLAUTO_INCREMENT,->`name`varchar(50)NOTNULL,->`c_id`int(11)DEFAULTNULLCOMMENT'課程id',->PRIMARYKEY(`id`)->)ENGINE=InnoDBDEFAULTCHARSET=utf8;mysql>INSERTINTO`my_student`VALUES('1','小明','1');mysql>INSERTINTO`my_student`VALUES('2','張三','1');mysql>INSERTINTO`my_student`VALUES('3','李四','2');STEP01創建my_student數據表并插入數據。連接查詢案例:自然連接代碼示例mysql>CREATETABLE`my_course`(->`c_id`int(11)NOTNULL,->`c_name`varchar(50)NOTNULL->)ENGINE=InnoDBDEFAULTCHARSET=utf8;mysql>INSERTINTO`my_course`VALUES('1','軟件工程');mysql>INSERTINTO`my_course`VALUES('2','頁面設計');創建my_course數據表并插入數據。STEP02連接查詢案例:自然連接代碼示例SELECT*FROM`my_student`NATURALJOIN`my_course`;+------+----+------+----------+|c_id|id|name|c_name|+------+----+------+----------+|1|1|小明|軟件工程||1|2|張三|軟件工程||2|3|李四|頁面設計|+------+----+------+----------+使用自然連接查詢。STEP03連接查詢

先定一個小目標!掌握USING關鍵字的語法格式掌握USING關鍵字的使用連接查詢語法格式SELECT查詢字段FROM表1[CROSS|INNER|LEFT|RIGHT]JOIN表2USING(同名的連接字段列表);USING關鍵字的使用場景:使用連接查詢時如果數據表的字段同名,匹配條件可以使用USING代替ON。連接查詢案例:USING關鍵字使用代碼示例mysql>SELECTDISTINCTg1.`id`,g1.`name`FROM`my_goods`g1->JOIN`my_goods`g2->USING(`category_id`)WHEREg2.`name`='鋼筆';+----+--------+|id|name|+----+--------+|1|2B鉛筆||3|碳素筆

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論