Intencja jest bezwarunkowa LEFT JOIN , który jest inny z CROSS JOIN w tym, że zwracane są wszystkie wiersze z lewego wyrażenia tabeli, nawet jeśli nie ma dopasowania w prawym wyrażeniu tabeli - podczas gdy CROSS JOIN usuwa takie wiersze z wyniku. Więcej o połączeniach znajdziesz w instrukcji.
Jednak:
1=1 nie ma sensu w Postgres i wszystkich pochodnych, w tym Amazon Redshift. Po prostu użyj true . Prawdopodobnie zostało to przeniesione z innego RDBMS, który nie obsługuje boolean wpisz poprawnie.
... LEFT JOIN (SELECT ...) ue ON true
Znowu LEFT JOIN nie ma sensu dla tego konkretnego podzapytania z SELECT MIN(modified) FROM user po prawej, ponieważ SELECT z funkcją agregującą (min() ) i nie GROUP BY klauzula zawsze zwraca dokładnie jeden wiersz. Ten przypadek (ale nie inne przypadki, w których brak wiersza można znaleźć) można uprościć do:
... CROSS JOIN (SELECT MIN(modified) AS first_modified FROM user) ue