L'intenzione è un incondizionato LEFT JOIN
, che è diverso da un CROSS JOIN
in quanto vengono restituite tutte le righe dell'espressione della tabella di sinistra, anche se non c'è corrispondenza nell'espressione della tabella di destra, mentre un CROSS JOIN
elimina tali righe dal risultato. Maggiori informazioni sui join nel manuale.
Tuttavia:
1=1
è inutile in Postgres e tutti i derivati, incluso Amazon Redshift. Usa semplicemente true
. Questo è stato probabilmente trasferito da un altro RDBMS che non supporta il boolean
digita correttamente.
... LEFT JOIN (SELECT ...) ue ON true
Poi di nuovo, LEFT JOIN
è inutile per questa particolare sottoquery con SELECT MIN(modified) FROM user
a destra, perché un SELECT
con una funzione aggregata (min()
) e nessun GROUP BY
la clausola restituisce sempre esattamente una riga. Questo caso (ma non altri casi in cui nessuna riga potrebbe essere trovato) può essere semplificato in:
... CROSS JOIN (SELECT MIN(modified) AS first_modified FROM user) ue