2 Stimmen

Wie wählt man den Inhalt von zwei verschiedenen Tabellen in Mysql aus?

Wie kann ich den Inhalt von zwei Spalten auswählen, die sich in verschiedenen Tabellen in einer Mysql-Datenbank befinden?

4voto

Adriaan Stander Punkte 155899

Sie müssten entweder einen JOIN oder UNION/UNION ALL verwenden.

Dies hängt davon ab, was Sie benötigen.

Nehmen wir an, Sie wollen alle Werte aus Tabelle 1 Spalte a und Tabelle 2 Spalte b in getrennten Reihen

Sie können verwenden

SELECT ColA
FROM TABLE1
UNION ALL
SELECT ColB
FROM TABLE2

Alle eindeutigen Werte

SELECT ColA
FROM TABLE1
UNION
SELECT ColB
FROM TABLE2

Und wenn man sie in derselben Zeile anzeigen möchte, sollten sie einen Schlüssel haben, der sie verbindet

SELECT ColA, ColB
FROM TABLE1 t1 INNER JOIN
   TABLE2 t2 ON t1.ID = t2.ID

Es wäre auch gut zu wissen, dass es verschiedene Arten von Sql-Verbindungen

Verschiedene SQL JOINs

  • JOIN: Gibt Zeilen zurück, wenn es mindestens eine mindestens eine Übereinstimmung in beiden Tabellen
  • LEFT JOIN: Liefert alle Zeilen aus der linken Tabelle zurück, auch wenn es keine Übereinstimmungen in der rechten Tabelle gibt
  • RIGHT JOIN: Gibt alle Zeilen aus der rechten Tabelle zurück, auch wenn es keine Übereinstimmungen in der linken Tabelle gibt
  • FULL JOIN: Gibt Zeilen zurück, wenn es eine eine Übereinstimmung in einer der Tabellen gibt

0voto

Chris Clarke Punkte 1306

Verwenden Sie einen JOIN.

http://w3schools.com/SQL/sql_join.asp

0voto

Amy B Punkte 17616
SELECT fields
FROM table_a a
JOIN table_b b
ON (a.id = b.foo_id)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X