首頁 > 資料庫 > mysql教程 > MySQL JOIN:ON 與 USING – 什麼時候該使用哪一個?

MySQL JOIN:ON 與 USING – 什麼時候該使用哪一個?

Linda Hamilton
發布: 2024-12-16 01:59:13
原創
788 人瀏覽過

MySQL JOIN: ON vs. USING – When Should I Use Which?

MySQL JOIN:ON 與 USING

MySQL 的 JOIN 語句提供兩個連接表的語法選項:ON 和 USING。雖然 USING 似乎只是 ON 的更簡潔替代方案,但存在一些值得考慮的細微差別。

ON 和USING 之間的差異

  • 靈活性: ON 提供了更大的靈活性,因為它允許在在列、多列甚至複雜的條件上進行連接。例如:
SELECT * FROM world.City JOIN world.Country ON (City.CountryCode = Country.Code) WHERE ...
登入後複製
  • 列命名: 當要連接的資料表共用同名的公用欄位時,USING 最有用。在這種情況下,可以省略列名:
SELECT ... FROM film JOIN film_actor USING (film_id) WHERE ...
登入後複製

與ON 不同,USING 不需要SELECT 清單或WHERE 子句中的完全限定列名:

SELECT film.title, film_id -- film_id not prefixed
FROM film
JOIN film_actor USING (film_id)
WHERE ...
登入後複製

特定用途案例

  • 使用 ON: 當連接多個欄位、條件或不相同的欄位名稱時。
  • 使用USING: 為了簡單起見,將具有相同名稱的公共列的表連接起來時

歧義和SELECT *

使用ON 連接表時,連接的列在結果集中出現兩次。使用 USING 時,它只會出現一次。當使用 SELECT *.

選擇所有欄位時,這可能會導致歧義問題

以上是MySQL JOIN:ON 與 USING – 什麼時候該使用哪一個?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板