LEFT JOIN id hat Null

OnDemand

Top Contributor
Hallo zusammen,

bestimmt ein typischer Anfängerfehler. Warum sind manche Schlüssel "null"? Eigentlich haben sie Werte.

SQL:
SELECT a.id AngestelltenPrimär, p.id PersonenPrimär, p.nachname Nachname, p.vorname Vorname, p.ort Ort
FROM personen p
LEFT JOIN(angestellte a) ON(a.id = p.id)
WHERE vorname = 'john'
 

Anhänge

  • 1.JPG
    1.JPG
    31,6 KB · Aufrufe: 36

OnDemand

Top Contributor
Daanke, hab mich da irgendwie verzettelt mit den ganzen IDs

Du kannst mir doch auch bestimmt sagen (wenn du möchtest :)), warum folgender Code so nicht funktioniert, aber mit GROUP BY und HAVING COUNT() funktioniert.
SQL:
SELECT name FROM angestellte
ORDER BY name
WHERE COUNT(name)>1

Liegt das daran, weil in WHERE-Klauseln keine Standardfunktionen ausgeführt werden können, sondern nur Bedingungen geprüft werden können?
 

OnDemand

Top Contributor
....deine Antwort passt nicht zur Frage..
Hab dich mal sicherheitshalber gemeldet, entweder wurde hier ein Account gehacked ?! oder im Idealfall ein Ding an der Waffel.
 
Zuletzt bearbeitet:

ceving

Aktives Mitglied
Hallo zusammen,

bestimmt ein typischer Anfängerfehler. Warum sind manche Schlüssel "null"? Eigentlich haben sie Werte.

SQL:
SELECT a.id AngestelltenPrimär, p.id PersonenPrimär, p.nachname Nachname, p.vorname Vorname, p.ort Ort
FROM personen p
LEFT JOIN(angestellte a) ON(a.id = p.id)
WHERE vorname = 'john'

Wenn du einen Left-Join von Personen auf Angestellte machst, wäre es sinnvoller, wenn du dir zuerst (also links) die Personen-Id und daneben die Id von den Angestellten anzeigen lassen würdest. Dann wäre die Sache klar. So funktioniert nämlich ein Left-Join. Wenn das nicht klar sein sollte, solltest du nochmal nachlesen was ein Left-Join ist.

Wenn in deiner Ausgabe keine Nulls sein dürfen machst du entweder die falsche Abfrage oder deine Daten sind Schrott. Wenn die Daten nicht Schrott sind, musst du einen Inner-Join machen, um nur die Datensätze zu sehen, bei denen die Relation erfüllt ist.
 

OnDemand

Top Contributor
Hallo ceving,

meinst du mit "zuerst personen id und daneben angestellten id" Die Anweisung in ON() ?
Wenn ich die ID tausche klappt:) vielen Dank für den Hinweis. Muss mich da nochmal belesen.

Verstehe ich das richtig:

Left Join verknüpft die linke Tabelle mit der in den Klammern, demzufolge muss die "Reihenfolge" der Werte in ON auch entsprechend passen?

Und: Kannst du mir die Frage beantworten (vorheriger Beitrag)
..
Warum folgender Code so nicht funktioniert, aber mit GROUP BY und HAVING COUNT() funktioniert.

SQL:
SELECT name FROM angestellte
ORDER BY name
WHERE COUNT(name)>1

Liegt das daran, weil in WHERE-Klauseln keine Standardfunktionen ausgeführt werden können, sondern nur Bedingungen geprüft werden können/dürfen oder hat es noch weitere Gründe?
 
Zuletzt bearbeitet:

ceving

Aktives Mitglied
Verstehe ich das richtig:

Left Join verknüpft die linke Tabelle mit der in den Klammern, demzufolge muss die "Reihenfolge" der Werte in ON auch entsprechend passen?

Nein ich meine die Reihenfolge im Select und dementsprechent die Reihenfolge in deiner Ergebnis-Liste. Wenn die Reihenfolgen zu einander passen, liefert ein Left-Join auf der rechten Seite die Nulls.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Left Join mit Wioth Rollup Datenbankprogrammierung 0
G [Hibernate] Problem mit LEFT JOIN Datenbankprogrammierung 7
D JOIN COLUMN wird nicht genommen Datenbankprogrammierung 2
Zrebna Wie mittels Hibernate eine Join-Tabelle als eigene Java-Klasse erstellen? Datenbankprogrammierung 5
S MySQL ehemaliger FULL OUTER JOIN zusammenstellen Datenbankprogrammierung 1
L Join zweier Tabellen in SQL Datenbankprogrammierung 2
A Fehlermeldung: JOIN FETCH expressions cannot be defined with an identification variable Datenbankprogrammierung 0
B Inner Join ohne SQL Syntax Datenbankprogrammierung 2
S SQL join - NullPointerExeption Datenbankprogrammierung 3
E Mehrere Tabellenspalten mit INNER JOIN verknüpfen Datenbankprogrammierung 1
ruutaiokwu reihenfolge der operanden bei join's Datenbankprogrammierung 5
G SQLite Self Join "unbestimmter tiefe" Datenbankprogrammierung 7
I MySQL Vergleich über mehrere Tabellen! Join? Datenbankprogrammierung 6
N Select mit join Datenbankprogrammierung 3
F Oracle select sum() join select sum() Datenbankprogrammierung 9
Kenan89 Datenbank Join Datenbankprogrammierung 16
M JPQL - Join Verkettung Datenbankprogrammierung 8
K SQL Inner Join - On Klausel Datenbankprogrammierung 10
F Komplexer Tabellen-Join und Ausgabe in Excel Datenbankprogrammierung 17
G JOIN Abfrage über mehrere Tabellen Datenbankprogrammierung 15
kirchrath Hibernate Join - angejointes Objekt wählen Datenbankprogrammierung 2
Eldorado MySQL SELECT mit GROUP BY und INNER JOIN Datenbankprogrammierung 2
G Join Abfrage Datenbankprogrammierung 12
S SQL inner join bei >10 Tabellen über 2 Variablen Datenbankprogrammierung 2
T MySQL: Join auf sich selbst schlägt fehlt Datenbankprogrammierung 3
MQue Join n:m Datenbankprogrammierung 9
0x7F800000 MS-SQL Server 2008 Wie benutzt man da NATURAL JOIN / INNER JOIN USING? Datenbankprogrammierung 3
D join updaten in java Datenbankprogrammierung 4
S Preparestatement mit join Datenbankprogrammierung 4
S MySQL: Abfrage auf 2 Tabellen durch join Datenbankprogrammierung 5
P Join Datenbankprogrammierung 4
G Hilfe: Werte sind alle x2 (oder mehr) nach JOIN Datenbankprogrammierung 13
M Proble mit Selcet mit join und rst.next() Datenbankprogrammierung 15
T Diverse JDBC Probleme (inner join, rs.last(), update) Datenbankprogrammierung 2
E ERROR: argument of JOIN/ON must be type boolean? Datenbankprogrammierung 2
E Nochmal eine Datenbankabfrage Frage :-o (JOIN oder so) Datenbankprogrammierung 4
E JOIN und * Datenbankprogrammierung 3
G Probleme mit Access und Join Datenbankprogrammierung 3
G PL/SQL: Join mit Collection Datenbankprogrammierung 5
T [SQL] Doppelter Join aus der selben Tabelle & Feldnnamen Datenbankprogrammierung 3
S JOIN und wohin damit? Datenbankprogrammierung 5
Maxim6394 EclipseLink + SQLite | Unable to acquire a connection from driver [null] Datenbankprogrammierung 6
ma095 value NULL- Datenbank Postgresql Spring - intellij community Datenbankprogrammierung 0
P Herausfinden wann Query null zurück gibt? Datenbankprogrammierung 1
N DBUnit und null Datenbankprogrammierung 6
P Null Werte bei der Normalisierung Datenbankprogrammierung 2
Z ResultSet ist null warum? Datenbankprogrammierung 12
krgewb getDouble auch mit null möglich? Datenbankprogrammierung 2
D SQL Server Android App: 'int java.lang.String.length()' on a null object reference Datenbankprogrammierung 15
zhermann Data truncation: Incorrect date value: 'null' for column Datenbankprogrammierung 31
I Datenbankverbindung Oracle DB klappt nicht - getConnection returned null Datenbankprogrammierung 8
M Derby/JavaDB einen Null-Wert in die Datenbank schreiben Datenbankprogrammierung 7
D Oracle NullPointerException bei select mit Null Values Datenbankprogrammierung 5
T IllegalArgumentException: Person[ id=null ] is not a known entity type.??? Datenbankprogrammierung 0
C PostgreSQL JDBC + PostgreSQL: getLong liefert 0 statt NULL Datenbankprogrammierung 2
R JPA dynamisch auf NULL abfragen Datenbankprogrammierung 2
P executeQuery liefert null zurück Datenbankprogrammierung 5
P Datenbank- Abfrage mit null'en Datenbankprogrammierung 2
C PreparedStatement und null Datenbankprogrammierung 13
M HSQLDB EntityManager null? Datenbankprogrammierung 7
O MySQL PreparedStatements: int null Datenbankprogrammierung 7
S Null Pointer exception statement Datenbankprogrammierung 8
M JPA NOT NULL Datenbankprogrammierung 11
E H2 - Datenbankabfrage gibt NULL aus? Datenbankprogrammierung 4
Q java.lang.NullPointerException connection = null Datenbankprogrammierung 13
C Metadata der SessionFactory immer null Datenbankprogrammierung 2
N Connection bleibt null Datenbankprogrammierung 7
F Derby/JavaDB Exception - Cannot accept Null Value (help) Datenbankprogrammierung 10
G MySQL Timestamp null Datenbankprogrammierung 2
H Fehler bei null-Datum in MySQL-DB Datenbankprogrammierung 2
G getConnection() liefert null Datenbankprogrammierung 3
A MSSQL - Spalten mit der Option: NULL zulassen Datenbankprogrammierung 2
G Hibernate oneToMany Not null Datenbankprogrammierung 4
S Update mit null Datenbankprogrammierung 11
H Date null = 30.11.0002? Datenbankprogrammierung 6
P Fehler: result-set zeigt auf null, aber warum Datenbankprogrammierung 4
R Warum ist meine Connection null? Datenbankprogrammierung 6
P Wie übergebe ich einen NULL Wert in meinem Java-Programm? Datenbankprogrammierung 7
W RsultSet auf null abfragen funktioniert nicht Datenbankprogrammierung 4
D hibernate + null + primitive Datentypen Datenbankprogrammierung 2
F MySQL gibt nur null zurück Datenbankprogrammierung 3
G NULL-data processing. Datenbankprogrammierung 11

Ähnliche Java Themen

Neue Themen


Oben