Heim > Datenbank > MySQL-Tutorial > MySQL JOIN: ON vs. USING – Wann sollte ich welches verwenden?

MySQL JOIN: ON vs. USING – Wann sollte ich welches verwenden?

Linda Hamilton
Freigeben: 2024-12-16 01:59:13
Original
778 Leute haben es durchsucht

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

MySQL JOIN: ON vs. USING

Die JOIN-Anweisung von MySQL bietet zwei Syntaxoptionen zum Verknüpfen von Tabellen: ON und USING. Während USING lediglich eine prägnantere Alternative zu ON zu sein scheint, gibt es subtile Unterschiede, die eine Überlegung wert sind.

Unterschiede zwischen ON und USING

  • Flexibilität: ON bietet mehr Flexibilität, da es Verknüpfungen auf einer Spalte, mehreren Spalten oder sogar komplexen Bedingungen ermöglicht. Zum Beispiel:
SELECT * FROM world.City JOIN world.Country ON (City.CountryCode = Country.Code) WHERE ...
Nach dem Login kopieren
  • Spaltenbenennung: USING ist am nützlichsten, wenn die zu verbindenden Tabellen eine identisch benannte gemeinsame Spalte haben. In solchen Fällen kann der Spaltenname weggelassen werden:
SELECT ... FROM film JOIN film_actor USING (film_id) WHERE ...
Nach dem Login kopieren

Im Gegensatz zu ON erfordert USING keine vollständig qualifizierten Spaltennamen in der SELECT-Liste oder WHERE-Klausel:

SELECT film.title, film_id -- film_id not prefixed
FROM film
JOIN film_actor USING (film_id)
WHERE ...
Nach dem Login kopieren

Spezifische Anwendungsfälle

  • Verwendung ON: Beim Verknüpfen mehrerer Spalten, Bedingungen oder nicht identischer Spaltennamen.
  • Verwenden Sie USING: Beim Verknüpfen von Tabellen mit einer identisch benannten gemeinsamen Spalte zur Vereinfachung und Leistung.

Mehrdeutigkeit und SELECT *

Bei Verwendung von ON Wenn Sie Tabellen verbinden, erscheint die verbundene Spalte zweimal im Ergebnissatz. Bei USING erscheint es nur einmal. Dies kann zu Mehrdeutigkeitsproblemen führen, wenn alle Spalten mit SELECT * ausgewählt werden.

Das obige ist der detaillierte Inhalt vonMySQL JOIN: ON vs. USING – Wann sollte ich welches verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage