Erklärung SQL String

Hallo,ich frage mich gerade was es bei diesem SELECT auf sich hat.

SELECT name,region,population FROM bbc x WHERE 25000000 >= ALL (SELECT population FROM bbc y WHERE x.region=y.region AND y.population>0)

Kann mir jemand erklären was das x nach FROM bbc soll?
Das gleiche auch für >= ALL


Vielen Dank!

Das x ist einfach ein Alias, so wie auch das y. Das all (select col from …) liefert col zurück.


Gegenfrage: Wo hast das gesehen?


Andreas

Danke für die Antwort.
Ich übe gerade auf dem sqlzoo. Auf einer anderen Seite war das als Lösung angepriesen.

Ich muß nochmal nachhaken:

Das:
SELECT name,region,population FROM bbc x
ist nur die Kurzform von
SELECT name,region,population FROM bbc AS x

was bedeutet, dass die Ergebnismenge in x quasi abrufbar ist.

Ja.

Andreas

Grund für die Aliase ist hier, das du in einem Statement zweimal auf die gleiche Tabelle in verschiedenen Kontexten zugreifen willst. Postgres bracht deshalb einen Hinweis, was wo gemeint ist.

Gruß Uwe