共計 848 個字符,預(yù)計需要花費(fèi) 3 分鐘才能閱讀完成。
自動寫代碼機(jī)器人,免費(fèi)開通
今天就跟大家聊聊有關(guān) MySQL 查詢條件中 on 和 where 的區(qū)別是什么,可能很多人都不太了解,為了讓大家更加了解,丸趣 TV 小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
MySQL 語句執(zhí)行順序
首先先說明一個概念,MySQL 語句執(zhí)行的順序,并不是按照 SQL 語句的順序。下面是示例 SQL
SELECT DISTINCT
select_list
left_table join_type
JOIN right_table ON join_condition
WHERE
where_condition
GROUP BY
group_by_list
HAVING
having_condition
ORDER BY
order_by_condition
LIMIT limit_number
下面是 SQL 的執(zhí)行順序
FROM left_table
ON join_condition
join_type JOIN right_table
WHERE where_condition
GROUP BY group_by_list
HAVING having_condition
SELECT
DISTINCT select_list
ORDER BY order_by_condition
LIMIT limit_number
LEFT JOIN 的作用
結(jié)果集的不同,不僅與 SQL 的優(yōu)先級有關(guān),還和 LEFT JOIN 有關(guān)
使用 left join 時 on 后面的條件只對右表有效
on 是在生成臨時表的時候使用的條件,不管 on 的條件是否起到作用,都會返回左表 (table_name1) 的行。
where 則是在生成臨時表之后使用的條件,此時已經(jīng)不管是否使用了 left join 了,只要條件不為真的行,全部過濾掉。
看完上述內(nèi)容,你們對 MySQL 查詢條件中 on 和 where 的區(qū)別是什么有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注丸趣 TV 行業(yè)資訊頻道,感謝大家的支持。
向 AI 問一下細(xì)節(jié)