Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie rufe ich den ersten Künstlernamen in einer LEFT JOIN-Abfrage ab?

Mary-Kate Olsen
Freigeben: 2024-11-05 20:15:02
Original
393 Leute haben es durchsucht

How to Retrieve the First Artist Name in a LEFT JOIN Query?

Probleme mit der Abfrage „LEFT JOIN Only First Row“ lösen

Bei dieser Abfrage möchten Sie den ersten Künstlernamen abrufen, der mit einem bestimmten Künstler verknüpft ist Feed während der Ausführung eines LEFT JOIN. Ihr ursprünglicher Ansatz mit einer Unterabfrage innerhalb der ON-Klausel hat jedoch nicht zu den gewünschten Ergebnissen geführt.

Um dieses Problem zu beheben, müssen wir die Unterabfrage anpassen, um die minimale artist_id abzurufen und sicherzustellen, dass der früheste Künstler ausgewählt wird. Dies erfordert eine geringfügige Änderung Ihrer Abfrage:

<code class="sql">SELECT *
FROM feeds f
LEFT JOIN artists a ON a.artist_id = (
    SELECT
      MIN(fa.artist_id) a_id
    FROM feeds_artists fa 
    WHERE fa.feed_id = f.feed_id
)</code>
Nach dem Login kopieren

Erklärung:

Diese aktualisierte Abfrage verwendet die Funktion MIN(), um die minimale artist_id für die entsprechende Feed_id zu ermitteln . Da davon ausgegangen wird, dass sich die artist_id mit der Zeit erhöht, stellt der Mindestwert den frühesten mit diesem Feed verknüpften Künstler dar.

Zusätzliche Überlegungen:

Es ist wichtig zu beachten, dass dieser Ansatz geht von Folgendem aus:

  • Die artist_id wird kontinuierlich erhöht, um sicherzustellen, dass der früheste Künstler identifizierbar ist.
  • Es gibt keine doppelten artist_id-Werte für eine bestimmte Feed_ID, was möglicherweise zu unvorhersehbaren Ergebnissen führen könnte.

Das obige ist der detaillierte Inhalt vonWie rufe ich den ersten Künstlernamen in einer LEFT JOIN-Abfrage ab?. 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