婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

  • <input id="yxpwy"></input>

    <pre id="yxpwy"></pre>

      
      
      主頁 > 知識庫 > MySQL連接查詢你真的學會了嗎?

      MySQL連接查詢你真的學會了嗎?

      熱門標簽:南太平洋地圖標注 html地圖標注并導航 400電話辦理服務價格最實惠 呂梁外呼系統 北京金倫外呼系統 武漢電銷機器人電話 催天下外呼系統 400電話變更申請 大豐地圖標注app

      1.內連接查詢概要

             內連接是應用程序中非常常見的連接操作,它一般都是默認的連接類型。內連接基于連接謂詞,它將兩張表(如A和B)的列組合在一起,產生新的結果表。內連接查詢會將A表的每一行和B表的每一行進行比較,并找出滿足連接謂詞的組合。當連接謂詞被滿足,A和B中匹配的行會按列組合(并排組合)成結果集中的一行。

             內連接查詢操作列出與連接條件匹配的數據行,它使用比較運算符比較被連接列的列值。內連接分3種:交叉連接相等連接和自然連接。

      2.交叉連接(笛卡爾積)

             交叉連接(Cross Join) ,又稱“笛卡爾連接(Cartesian Join) "或“叉乘(Product) ",它是所有類型的內連接的基礎。

             如果把表視為行記錄的集合,那么交叉連接即返回這兩個集合的笛卡爾積,返回到結果集合中的數據行數等于第一張表中符合查詢條件的數據行數乘以第二個表中符合查詢條件的數據行數。這其實等價于內連接的連接條件為“永真” ,或連接條件不存在。如果A和B是兩個集合,它們的交叉連接就記為: A x B.

             定義線路表與車輛表的交叉連接(笛卡爾積) 。

      示例:

      實現線路表與車輛表笛卡爾積

      SELECT COUNT(*)
      FROM line 
      CROSS JOIN vehicle

      3.內連接語法與示例

      語法:

      SELECT fieldlist
      FROM table1 [INNER] JOIN table2 
        ON table1.column1=table2.column2
      [WHERE condition]

      示例1:

      使用內連接獲取車輛型號含有“DD”字樣的車輛信息和司機信息,要求車輛信息為全部列,司機信息中只需包含姓名和身份證

      SELECT v.*,d.name,d.licenseNo
      FROM vehicle v JOIN driver d
        ON v.driverID=d.driverID
      WHERE model LIKE '%DD%'
      

      示例2:

      使用內連接獲取年齡大于35歲的司機信息和該司機所駕駛的車輛信息,要求車輛信息為全部列,司機信息中只包含姓名、出生年月和電話

      SELECT v.*,d.name,d.licenseNo,d.phone
      FROM vehicle v INNER JOIN driver d
        ON v.driverID=d.driverID
      WHERE CEIL(DATEDIFF(NOW(),birthday)/365)>35
      

      4.自然連接

      自然連接(Natural Join)是一種特殊的內連接,它要求相連接的兩張表的連接依據列心須是相同的字段(字段온相同,字段屬性相同)。在自然連接中兩張表的所有名稱相同的列都將被比較,并且在結果集中把重復的列去掉,結果集中兩張表中名稱相同的列僅出現一次。而普通的內連接并不去掉重復的列。(部分數據庫不支持自然連接,saL Server等。)

      自然連接的語法如下:

      SELECT fieldlist
      FROM table1 NATURAL JOIN table2
      [WHERE condition]
      

      示例:

      使用自然連接獲取車輛型號含有“DD”字樣的車輛信息和司機信息,要求車輛信息為全部列,司機信息中只需包含姓名和身份證

      SELECT v.*,d.name,d.licenseNo
      FROM vehicle v NATURAL JOIN driver d
      WHERE model LIKE '%DD%'
      

      5.多表連接查詢

      如果查詢的信息來源于多張表,則可通過兩兩相連的方式建立多表連接查詢。

      以下為三表連接查詢的語法:

      SELECT fieldlist 
      FROM table1 JOIN table2 
        ON table1.column1=table2.column2_1
      JOIN table3
        ON table2.column2_2=table3.column3
      [WHERE condition]
      

      說明:

      (1)table2與table1和table3兩兩相連。

      (2)三表以上連接查詢的方法與三表連接查詢的方法一樣,均是通過兩兩相連的方式實現。

      示例1:

      獲取所有非空調車的車牌號、型號和司機姓名、所屬線路的線路好、起點站和終點站信息

      SELECT d.name,v.plateNo,v.model,l.lineNo,l.from_station,l.end_station
      FROM vehicle v JOIN driver d
        ON v.driverID=d.driverID
      JOIN line l
        ON v.lineID=l.lineID
      WHERE type='非空調車'
      

      示例2:

      獲取公交二公司所有司機信息。要求輸出司機姓名、身份證、性別和電話。

      SELECT d.name,d.licenseNo,d.gender,d.phone
      FROM vehicle v JOIN driver d 
        ON v.driverID 
      JOIN line l
        ON v.lineID=l.lineID
      WHERE company='公交二公司'
      

      6.簡單多表連接查詢

      如果在FROM子句中,直接列出所有要連接的表,然后在WHERE子句中指定連接條件,此為簡單多表查詢,它與內連接功能相同

      使用兩表連接查詢語法格式如下:

      SELECT fieldlist
      FROM table1,table2
      WHERE table1.column1=table2.column2
      [AND 其他條件]
      

      使用三表連接查詢語法格式如下:

      SELECT fieldlist 
      FROM table1,table2,table3
      WHERE table1.column1=table2.column2_1 
        AND table2.column2_2=table3.colemn3
      [AND 其他條件]
      

      示例:

      獲取所有非空調車的車牌號、型號和司機姓名、所屬線路的線路好、起點站和終點站信息

      SELECT d.name,v.plateNo,v.model,l.lineNo,l.from_station,l.end_station
      FROM vehicle v,driver d,line l
      WHERE v.driverID=d.driverID
        AND v.lineID=l.lineID
      AND type='空調車'
      

      總結

      到此這篇關于MySQL連接查詢的文章就介紹到這了,更多相關MySQL連接查詢內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

      您可能感興趣的文章:
      • MySQL中基本的多表連接查詢教程
      • 詳解MySQL中的分組查詢與連接查詢語句
      • mysql連接查詢(左連接,右連接,內連接)
      • MySQL查詢優化:連接查詢排序limit(join、order by、limit語句)介紹
      • mysql多個left join連接查詢用法分析
      • MySQL查詢優化:連接查詢排序淺談
      • 詳解MySql基本查詢、連接查詢、子查詢、正則表達查詢
      • MySQL筆記之連接查詢詳解
      • Mysql自連接查詢實例詳解
      • mysql多表連接查詢實例講解

      標簽:麗水 南充 徐州 龍巖 無錫 迪慶 自貢 西寧

      巨人網絡通訊聲明:本文標題《MySQL連接查詢你真的學會了嗎?》,本文關鍵詞  MySQL,連接,查詢,你,真的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
    1. 相關文章
    2. 下面列出與本文章《MySQL連接查詢你真的學會了嗎?》相關的同類信息!
    3. 本頁收集關于MySQL連接查詢你真的學會了嗎?的相關信息資訊供網民參考!
    4. 推薦文章
      主站蜘蛛池模板: 香格里拉县| 岑溪市| 会同县| 图木舒克市| 舞阳县| 晋宁县| 雅江县| 达孜县| 合肥市| 武陟县| 健康| 万年县| 镇宁| 自治县| 滦平县| 玛沁县| 墨江| 陆河县| 长岭县| 商南县| 禹州市| 瓮安县| 文昌市| 宁城县| 普陀区| 西林县| 宜城市| 黔江区| 库车县| 伊金霍洛旗| 南召县| 昭觉县| 武功县| 博客| 额敏县| 松潘县| 洪湖市| 婺源县| 延庆县| 丰都县| 新巴尔虎左旗|