Datenbanken · Middle · Frage 31 von 75
Was erlaubt LEFT JOIN LATERAL?
SELECT u.name, o.*
FROM users u
LEFT JOIN LATERAL (
SELECT * FROM orders WHERE orders.user_id = u.id
ORDER BY created_at DESC LIMIT 3
) o ON true;- 1Tabellen ohne Bedingung nebeneinander verbinden
- 2Nur über indizierte Spalten joinen
- 3Eine
FROM-Unterabfrage, die frühere Tabellen referenziert
Antwort zeigen
Richtige Antwort: Eine FROM-Unterabfrage, die frühere Tabellen referenziert
Erklärung
Es ist ein sauberer Weg, „Top N pro Gruppe“ zu schreiben. Mit einem Index auf (user_id, created_at) ist jede Abfrage billig.