欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql中的join和where優(yōu)先級順序解讀

 更新時間:2023年03月20日 10:50:30   作者:所謂永恒  
這篇文章主要介紹了mysql中的join和where優(yōu)先級順序解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

mysql 的 join 和 where 優(yōu)先級

定義

join功能

  • inner join(內(nèi)連接,或等值連接) : 獲取兩個表中字段匹配關(guān)系的記錄。
  • left join (左連接) : 獲取左表所有記錄,即使右表沒有對應(yīng)匹配的記錄。
  • right join (右連接) : 與 LEFT JOIN 相反,用于獲取右表所有記錄,即使左表沒有對應(yīng)匹配的記錄。

where

where 是 mysql 語句的查詢條件

測試數(shù)據(jù)表

  • 表 a1
xy
110
220
330
  • 表 a2
xy
10100
20200
20300
create table if not exists `a1`(
    `x` int(10),
    `y` int(10)
);

create table if not exists `a2`(
    `y` int(10),
    `z` int(10)
)

查詢 sql 及結(jié)果

正常左連接

select * from a1 left join a2 on a1.y = a2.y;
xyyz
11010100
22020200
22020300
330NULLNULL

左連情況下, 由于左邊a1.y = 30在右表無數(shù)據(jù)所以右表數(shù)據(jù) (y,z)為 NULL

左連 on && and

select * from a1 left join a2 on a1.y = a2.y and a2.y = 10;
xyyz
11010100
220NULLNULL
330NULLNULL

由于是左連, 所以判斷 (a1.y = a2.y && a2.y = 10) 只能篩選出(10, 100)與左邊匹配, 所以后面均為 NULL.

即實際優(yōu)先級是

select * from (a1 left join a2 on a1.y = a2.y and a2.y = 10)

左連 on && where

select * from a1 left join a2 on a1.y = a2.y where a2.y = 10;
xyyz
11010100

只有一條數(shù)據(jù), 因此可判斷其優(yōu)先級為

select * from (a1 left join a2 on a1.y = a2.y) where a2.y = 10???????

也就是說 會先左連生成臨時表, 然后再在整體表上進(jìn)行 where 查詢.

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mySql關(guān)于統(tǒng)計數(shù)量的SQL查詢操作

    mySql關(guān)于統(tǒng)計數(shù)量的SQL查詢操作

    這篇文章主要介紹了mySql關(guān)于統(tǒng)計數(shù)量的SQL查詢操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • MYSQL數(shù)據(jù)庫數(shù)據(jù)拆分之分庫分表總結(jié)

    MYSQL數(shù)據(jù)庫數(shù)據(jù)拆分之分庫分表總結(jié)

    這篇文章主要介紹了MYSQL數(shù)據(jù)庫數(shù)據(jù)拆分之分庫分表總結(jié),需要的朋友可以參考下
    2016-07-07
  • mysql數(shù)據(jù)遷移到Oracle的正確方法

    mysql數(shù)據(jù)遷移到Oracle的正確方法

    這篇文章主要為大家詳細(xì)介紹了mysql數(shù)據(jù)遷移到Oracle的正確方法,文中步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • MySQL下使用Inplace和Online方式創(chuàng)建索引的教程

    MySQL下使用Inplace和Online方式創(chuàng)建索引的教程

    這篇文章主要介紹了MySQL下使用Inplace和Online方式創(chuàng)建索引的教程,針對InnoDB為存儲引擎的情況,需要的朋友可以參考下
    2015-11-11
  • MySQL分區(qū)表的局限和限制詳解

    MySQL分區(qū)表的局限和限制詳解

    本文對Mysql分區(qū)表的局限性做了一些總結(jié),因為個人能力以及測試環(huán)境的 原因,有可能有錯誤的地方,還請大家看到能及時指出,當(dāng)然有興趣的朋友可以去官方網(wǎng)站查閱。
    2017-03-03
  • zabbix監(jiān)控MySQL主從狀態(tài)的方法詳解

    zabbix監(jiān)控MySQL主從狀態(tài)的方法詳解

    這篇文章主要介紹了zabbix--監(jiān)控MySQL主從狀態(tài)的方法,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-06-06
  • MySQL中的SQL標(biāo)準(zhǔn)語句詳解

    MySQL中的SQL標(biāo)準(zhǔn)語句詳解

    SQL(Structured?Query?Language)是“結(jié)構(gòu)化查詢語言”,它是對關(guān)系型數(shù)據(jù)庫的操作語言。雖然SQL可以用在所有關(guān)系型數(shù)據(jù)庫中,但很多數(shù)據(jù)庫還都有標(biāo)準(zhǔn)之后的一些語法,我們可以稱之為方言
    2022-09-09
  • MySQL?8.0.28?安裝配置圖文教程

    MySQL?8.0.28?安裝配置圖文教程

    這篇文章主要為大家詳細(xì)介紹了MySQL?8.0.28?安裝配置圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • 在MySQL中生成隨機密碼的方法

    在MySQL中生成隨機密碼的方法

    這篇文章主要介紹了在MySQL中生成隨機密碼的方法,作者還給出了密碼所對應(yīng)類型限制的參數(shù)表,需要的朋友可以參考下
    2015-05-05
  • MySQL MGR 有哪些優(yōu)點

    MySQL MGR 有哪些優(yōu)點

    這篇文章主要介紹了MySQL MGR 有哪些優(yōu)點,文中講解非常細(xì)致,幫助大家更好的理解和學(xué)習(xí)MySQL mgr,感興趣的朋友可以了解下
    2020-08-08

最新評論