Warum funktioniert die SQL-Abfrage nicht?

3 Antworten

GROUP BY verwendet man in der Regel mit einer Aggregatsfunktion.

Versuche Mal die Angabe ob es ein Left oder ein Right Join ist.

Woher ich das weiß:Studium / Ausbildung
Gutofruto 
Fragesteller
 06.01.2024, 11:51

Was ist denn left oder right join?

0
Genervter0815  06.01.2024, 11:52
@Gutofruto

Das bezieht sich darauf ob die Anfrage der Daten im Join links vom Join wichtig ist oder rechts.

0
Gutofruto 
Fragesteller
 06.01.2024, 11:55
@Genervter0815

Wie soll das denn gehen? Da ist doch nur rechts vom joib was, außer man macht keine Zeilenumbrüche

0
Gutofruto 
Fragesteller
 06.01.2024, 11:57
@Genervter0815

So?

SELECT Bestellungen.Bestellnummer, Kunden.Name, Bestellungen.Bestelldatum

FROM Bestellungen

JOIN RIGHT Kunden ON Bestellungen.KundenID = Kunden.KundenID

WHERE Bestellungen.Bestelldatum BETWEEN '2023-01-01' AND '2023-12-31'

ORDER BY Bestellungen.Bestelldatum DESC

LIMIT 10

GROUP BY Kunden.Name;

0
Genervter0815  06.01.2024, 11:58
@Gutofruto

Erst Right dann Join. Die Frage ist aber an welcher Stelle dir die Datenbank sagt, hier ist ein Fehler, bei der Abfrage.

0
triopasi  06.01.2024, 12:04
@Genervter0815

Der liebe Fragesteller soll sich mal darum bemühen etwas selbst nachzudenken und den eigenen Code anzusehen. Ich denke der es ist offensichtlich, wieso der Code nicht zur Fragestellung passt.

0

Die Reihenfolge ist soweit ich weiss nicht egal, sortiere das mal:

SELECT .. FROM .. JOIN .. WHERE .. GROUP BY .. ORDER BY .. LIMIT...