最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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 ifnull()函數(shù)的具體使用

    MySQL ifnull()函數(shù)的具體使用

    本文主要介紹了MySQL ifnull()函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 101個MySQL的配置和優(yōu)化的提示

    101個MySQL的配置和優(yōu)化的提示

    這里是101條調(diào)節(jié)和優(yōu)化 MySQL安裝的技巧。一些技巧是針對特定的安裝環(huán)境的,但這些思路是通用的。我已經(jīng)把他們分成幾類,來幫助你掌握更多MySQL的調(diào)節(jié)和優(yōu)化技巧
    2013-08-08
  • MySql中使用正則表達(dá)式查詢的方法

    MySql中使用正則表達(dá)式查詢的方法

    Mysql 使用 REGEXP 關(guān)鍵字指定正則表達(dá)式的字符匹配模式。接下來通過本文給大家分享MySql中使用正則表達(dá)式查詢的方法,感興趣的朋友一起看看吧
    2017-07-07
  • mysql 按中文字段排序

    mysql 按中文字段排序

    在MySQL中,進(jìn)行中文排序和查找的時候,對漢字的排序和查找結(jié)果是錯誤的。 這種情況在MySQL的很多版本中都存在。
    2009-01-01
  • MySQL主從復(fù)制延遲原因以及解決方案

    MySQL主從復(fù)制延遲原因以及解決方案

    這篇文章主要介紹了MySQL主從復(fù)制延遲原因以及解決方案,幫助大家更好的理解和使用數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-09-09
  • MySQL存儲過程相互調(diào)用并獲得錯誤碼示例

    MySQL存儲過程相互調(diào)用并獲得錯誤碼示例

    這篇文章主要介紹了MySQL存儲過程相互調(diào)用并獲得錯誤碼,需要的朋友可以參考下
    2014-03-03
  • SQL如何使用正則表達(dá)式對數(shù)據(jù)進(jìn)行過濾

    SQL如何使用正則表達(dá)式對數(shù)據(jù)進(jìn)行過濾

    正則表達(dá)式的作用是匹配文本,將一個正則表達(dá)式與一個文本串進(jìn)行比較,下面這篇文章主要給大家介紹了關(guān)于SQL如何使用正則表達(dá)式對數(shù)據(jù)進(jìn)行過濾的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • MySQL向表中添加列方法實例

    MySQL向表中添加列方法實例

    要在MySQL的表中添加列,我們可以將ALTER命令與add column命令一起使用,下面這篇文章主要給大家介紹了關(guān)于MySQL向表中添加列的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • MySQL中組合字段之concat()

    MySQL中組合字段之concat()

    這篇文章主要介紹了MySQL中組合字段之concat(),MySQL是關(guān)系型數(shù)據(jù)庫,我們在使用的時候往往會將對象的屬性映射成列存儲在表中,因此查詢的到的結(jié)果在不做任何處理的情況下,也是一個個單獨的屬性,需要的朋友可以參考一下
    2021-11-11
  • mysql如何配置secure_file_priv

    mysql如何配置secure_file_priv

    這篇文章主要介紹了mysql如何配置secure_file_priv問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01

最新評論

西藏| 苍山县| 达孜县| 乌什县| 特克斯县| 临西县| 陵水| 会理县| 十堰市| 临邑县| 化隆| 塔河县| 白银市| 旬阳县| 玉林市| 房产| 乌兰县| 新民市| 上高县| 丰都县| 长宁县| 扶风县| 沙田区| 措勤县| 山西省| 长汀县| 吉水县| 颍上县| 包头市| 乌恰县| 汕头市| 乐平市| 高邮市| 湟中县| 东莞市| 土默特左旗| 庆元县| 呼图壁县| 德庆县| 南靖县| 八宿县|