SQL-Implementierung von LeetCode (175. Zwei Tabellen verbinden)

SQL-Implementierung von LeetCode (175. Zwei Tabellen verbinden)

[LeetCode] 175.Zwei Tabellen kombinieren

Tabelle: Person

+-------------+---------+
| Spaltenname | Typ |
+-------------+---------+
| Personen-ID | int |
| Vorname | varchar |
| Nachname | varchar |
+-------------+---------+
PersonId ist die Primärschlüsselspalte für diese Tabelle.

Tabelle: Adresse

+-------------+---------+
| Spaltenname | Typ |
+-------------+---------+
| Adress-ID | int |
| Personen-ID | int |
| Stadt | varchar |
| Status | varchar |
+-------------+---------+
AddressId ist die Primärschlüsselspalte für diese Tabelle.

Schreiben Sie eine SQL-Abfrage für einen Bericht, der für jede Person in der Tabelle „Person“ die folgenden Informationen bereitstellt, unabhängig davon, ob für jede dieser Personen eine Adresse vorhanden ist:

Vorname, Nachname, Stadt, Staat

LeetCode hat auch eine Frage zur Datenbank. Machen wir sie. Dies ist die erste Frage. Sie ist relativ einfach. Es geht um eine gemeinsame Suche zwischen zwei Tabellen. Wir müssen die Join-Operation verwenden. Für einige Join-Operationen können Sie meinen vorherigen Blog lesen: SQL Left Join, Right Join, Inner Join und Natural Join. Der direkteste Weg ist, Left Join zu verwenden, um die beiden Tabellen gemäß PersonId zu verbinden:

Lösung 1:

SELECT Person.Vorname, Person.Nachname, Adresse.Stadt, Adresse.Bundesland FROM Person LEFT JOIN Adresse ON Person.PersonId = Adresse.PersonId;

Bei Verwendung von Left Join können wir auch das Schlüsselwort Using nutzen, um anzugeben, welchen Spaltennamen wir für den Join verwenden möchten:

Lösung 2:

SELECT Person.Vorname, Person.Nachname, Adresse.Stadt, Adresse.Bundesland FROM Person LEFT JOIN Adresse USING(PersonId);

Oder wir können das Schlüsselwort Natural hinzufügen, sodass wir keine bestimmten Spalten deklarieren müssen und MySQL selbst nach denselben Spalten suchen kann:

Lösung 3:

SELECT Person.Vorname, Person.Nachname, Adresse.Stadt, Adresse.Bundesland FROM Person NATURAL LEFT JOIN Adresse;

Quellen:

https://leetcode.com/discuss/21216/its-a-simple-question-of-left-join-my-solution-attached

https://leetcode.com/discuss/53001/comparative-solution-between-left-using-natural-left-join

Dies ist das Ende dieses Artikels über die SQL-Implementierung von LeetCode (175. Zwei Tabellen verbinden). Weitere relevante SQL-Implementierungen zum Verbinden zweier Tabellen finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • SQL-Implementierung von LeetCode (183. Kunden, die noch nie eine Bestellung aufgegeben haben)
  • SQL-Implementierung von LeetCode (182. Doppelte Postfächer)
  • SQL-Implementierung von LeetCode (181. Angestellte verdienen mehr als Manager)
  • SQL implementiert LeetCode (180. Fortlaufende Zahlen)
  • SQL-Implementierung von LeetCode (178. Punkterangliste)
  • SQL-Implementierung von LeetCode (177. N-höchstes Gehalt)
  • SQL-Implementierung LeetCode (176. Zweithöchstes Gehalt)
  • SQL-Implementierung von LeetCode (184. Das höchste Gehalt der Abteilung)

<<:  RGB-Farbtabellensammlung

>>:  Farbverlauf für HTML-Hintergrund durch CSS erreicht

Artikel empfehlen

Natives JS zum Erzielen von Jalousie-Spezialeffekten

In diesem Artikel wird ein Jalousie-Spezialeffekt...

So verwenden Sie vue.js zum Implementieren der Drag & Drop-Funktion

Vorwort Durch das Hinzufügen einer Drag & Dro...

Mysql-Sortierung und Paginierung (Order by & Limit) und vorhandene Fallstricke

Sortierabfrage (Sortieren nach) Im E-Commerce: Wi...

Tutorial zur Installation der entpackten Version von mysql5.7 auf CentOS 7

1. Entpacken Sie das komprimierte MySQL-Paket in ...

Methode zum dynamischen Laden von Geojson basierend auf Vue+Openlayer

Laden eines oder mehrerer Features <Vorlage>...

React realisiert sekundären Verknüpfungseffekt (Treppeneffekt)

In diesem Artikel wird der spezifische Code von R...

Ein Beispiel für die Umgestaltung eines Puzzlespiels mit vue3

Vorwort Es dauerte zwei Tage, um ein Puzzlespiel ...

Lernen Sie schnell die MySQL-Grundlagen

Inhaltsverzeichnis SQL verstehen SELECT verstehen...

jQuery realisiert die Shuttle-Box-Funktion

In diesem Artikelbeispiel wird der spezifische Co...

Einige Parameterbeschreibungen von Texteingabefeldern im Webdesign

In Gästebüchern, Foren und anderen Orten werden i...