Philipp Hasenfratz: MySQL LEFT JOIN. Was geht da genau vor sich?

Beitrag lesen

Halihallo Excess2000

Du brauchst keine Schlüssel um Tabellen zu verknüpfen (auch wenn es nicht sehr oft
vorkommen mag).
Wie willst du denn einen Join ohne >Schlüssel durchführen?

Kunde

kundenname
ist_aktiv   : Mögliche Werte 0 oder 1

Fehler

ist_aktiv
Meldung     : Account nicht zugänglich oder OK, einloggen

SELECT Meldung FROM Kunde NATURAL JOIN Fehler

Das ist ein Join _ohne_ Schlüssel (auch wenn er höchst sinnfrei ist, wie ich bereits
auch gesagt habe).

Der Sinn von Primary Keys (und das meinst du wohl mit Schlüssel) ist die eindeutige
Kennzeichnung für einen bestimmten Datensatz. Der Sinn von Foreign Keys ist es, einen
Primary Key einer anderen Relation/Tabelle zu referenzieren (oder NULL). Beide haben
für JOIN keine "besondere" Bedeutung und verhalten sich so, wie jedes andere
Attribut/Spalte.

Folge: Schlüssel, sei nun Primary oder Foreign gemeint, sind für JOIN's keine notwendige
Voraussetzung.

Viele Grüsse

Philipp