Maison > base de données > tutoriel mysql > MySQL JOIN : ON ou USING – Quand dois-je utiliser lequel ?

MySQL JOIN : ON ou USING – Quand dois-je utiliser lequel ?

Linda Hamilton
Libérer: 2024-12-16 01:59:13
original
778 Les gens l'ont consulté

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

MySQL JOIN : ON vs. USING

L'instruction JOIN de MySQL fournit deux options de syntaxe pour joindre des tables : ON et USING. Bien que USING puisse sembler être simplement une alternative plus concise à ON, il existe des différences subtiles qui méritent d'être prises en considération.

Différences entre ON et USING

  • Flexibilité :ON offre une plus grande flexibilité car il permet des jointures sur une colonne, plusieurs colonnes ou même des conditions complexes. Par exemple :
SELECT * FROM world.City JOIN world.Country ON (City.CountryCode = Country.Code) WHERE ...
Copier après la connexion
  • Nom de colonne : USING est plus utile lorsque les tables jointes partagent une colonne commune portant le même nom. Dans de tels cas, le nom de la colonne peut être omis :
SELECT ... FROM film JOIN film_actor USING (film_id) WHERE ...
Copier après la connexion

Contrairement à ON, USING ne nécessite pas de noms de colonnes entièrement qualifiés dans la liste SELECT ou la clause WHERE :

SELECT film.title, film_id -- film_id not prefixed
FROM film
JOIN film_actor USING (film_id)
WHERE ...
Copier après la connexion

Cas d'utilisation spécifiques

  • Utiliser ON :Quand jointure sur plusieurs colonnes, conditions ou noms de colonnes non identiques.
  • Utilisez USING : Lorsque vous joignez des tables avec une colonne commune portant le même nom pour plus de simplicité et de performances.

Ambiguïté et SELECT *

Lorsque vous utilisez ON pour joindre des tables, la colonne jointe apparaît deux fois dans le résultat ensemble. Avec USING, il n'apparaît qu'une seule fois. Cela peut entraîner des problèmes d'ambiguïté lors de la sélection de toutes les colonnes avec SELECT *.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal