SQLite

So verbinden Sie Tabellen in SQLite

So verbinden Sie Tabellen in SQLite
Wenn wir mit Datenbanken arbeiten, müssen wir manchmal Datensätze aus Tabellen in einer Datenbank zusammenführen. In diesem Fall können wir die SQL JOIN-Anweisung verwenden, die die angegebenen Felder mit gemeinsamen Werten in jedem Feld kombiniert.

Es gibt drei Haupttypen von SQLite-Joins.

  1. Das CROSS JOIN
  2. INNERE VERBINDUNG
  3. LINKE ÄUSSERE VERBINDUNG

Dieses Tutorial führt Sie schnell durch diese SQLite-Joins und zeigt Ihnen, wie Sie Datenbankeinträge verbinden join.

Beginnen wir mit dem INNER JOIN, da es einfach ist und eine Grundlage für uns bildet, andere JOIN-Typen zu verstehen.

1: Der INNERE JOIN

Der INNER JOIN funktioniert, indem er eine neue Tabelle erstellt, indem die Werte der angegebenen Tabellen kombiniert werden. Es beginnt damit, die Zeile in jeder Tabelle zu vergleichen und alle passenden Paare für das angegebene Prädikat zu finden. Es kombiniert dann die passenden Paare in einer einzigen Reihe.

Die allgemeine Syntax für INNER JOIN lautet:

SELECT Spalte(n) FROM Tabelle1 INNER JOIN Tabelle2 ON Tabelle1.Spalte = Tabelle2.Säule;

Sehen wir uns eine JOIN-Operation an, um zu veranschaulichen, wie sie funktioniert.

Angenommen, Sie haben eine Tabelle mit dem Namen Benutzer mit Feldern: ID, Name, Alter, Sprachbeispiel SQL-Abfrage zum Erstellen einer Tabelle ist unten:

CREATE TABLE "users" (
"id" INTEGER NICHT NULL,
"name" TEXT NICHT NULL,
"Alter" INTEGER NICHT NULL,
"Sprache" TEXT,
PRIMÄRSCHLÜSSEL("id" AUTOINKREMENT)
);

Wir haben auch eine andere Tabelle namens rows mit den Feldern id und role-SQL Query, die unten bereitgestellt wird:

TABELLE ERSTELLEN "Rollen" (
"id" INTEGER NICHT NULL,
"Rolle" TEXT,
PRIMÄRSCHLÜSSEL("id" AUTOINKREMENT)
)

Jetzt können wir eine SQLite INNER JOIN-Operation mit der unten gezeigten Abfrage ausführen:

SELECT-Benutzer.ID, Benutzer.Name, Rollen.Rolle VON Benutzern INNER JOIN Rollen für Benutzer.id = Rollen.Ich würde;

Die obige Abfrage führt zu der folgenden Tabelle:

2: Das CROSS JOIN

Die andere Art von SQL JOIN ist der CROSS JOIN. Dieser Typ gleicht jede Zeile aus der ersten Tabelle mit jeder Zeile in der zweiten Tabelle ab. Betrachten Sie es als kartesisches Produkt, da die Ergebnisse eine Reihe von Zeilen aus Tabelle 1 sind, die mit jeder Zeile in Tabelle 2 übereinstimmen. Wenn beispielsweise table1 (a) Zeilen hat und table2 (b) Zeilen hat, hat die resultierende Tabelle a*b row.

HINWEIS: Seien Sie vorsichtig, wenn Sie Cross-Joins verwenden, da sie das Potenzial haben, riesige Tabellensätze zu erzeugen.

Die allgemeine Syntax für einen Cross-Join lautet:

SELECT Spalte(n) FROM Tabelle1 CROSS JOIN Tabelle2;

Betrachten Sie einen Cross-Join aus der Tabelle des Benutzers mit allen Zeilen der Rollentabelle. Betrachten Sie die folgende SQL-Abfrage:

SELECT * FROM Benutzer CROSS JOIN Rollen;

Das Ausführen der obigen Abfrage führt zu einer Tabelle wie unten gezeigt:

3: Der LINKE ÄUSSERE JOIN

Der letzte Join, den wir uns ansehen werden, ist der OUTER JOIN. Der OUTER JOIN ist eine Erweiterung des INNER JOIN. Wie der INNER-Join drücken wir ihn unter Bedingungen wie ON, NEUTRAL und USING aus. Es ist auch gut zu beachten, dass SQL drei Arten von OUTER JOINS definiert: left, right und full, aber SQLite unterstützt nur LEFT JOIN.

Der LEFT äußere JOIN gibt alle Zeilen aus der LEFT-Tabelle zurück, die in der Bedingung angegeben ist und nur die Zeilen aus anderen Tabellen, bei denen die Join-Bedingung wahr ist.

Betrachten Sie die folgende Abfrage.

SELECT-Benutzer.ID, Benutzer.Name, Rollen.Rolle, Benutzer.Sprache VON Benutzern LEFT OUTER JOIN Rollen FÜR Benutzer.id = Rollen.Ich würde;

Die obige Abfrage führt zu der folgenden Tabelle:

Fazit

Dieses Tutorial hat gezeigt, wie Sie SQL-Joins in SQLite ausführen und neue Tabellen mit geänderten Informationen erstellen create. Es ist gut, weiter mit SQL JOINs zu experimentieren, da sie bei der Arbeit mit Datenbanken sehr praktisch sind handy.

Danke fürs Lesen!

So verwenden Sie die GameConqueror-Cheat-Engine unter Linux
Der Artikel enthält eine Anleitung zur Verwendung der GameConqueror-Cheat-Engine unter Linux. Viele Benutzer, die Spiele unter Windows spielen, verwen...
Beste Spielkonsolen-Emulatoren für Linux
Dieser Artikel listet beliebte Spielekonsolen-Emulationssoftware auf, die für Linux verfügbar ist. Emulation ist eine Softwarekompatibilitätsschicht, ...
Beste Linux-Distributionen für Gaming im Jahr 2021
Das Linux-Betriebssystem hat sich weit von seinem ursprünglichen, einfachen, serverbasierten Aussehen entfernt. Dieses Betriebssystem hat sich in den ...