SELECT [ ALL | DISTINCT ] expression [ AS name ] [, ...] INTO [TEMP] [ TABLE ] new_table ] [ FROM table [alias] [, ...] ] [ WHERE condition ] [ GROUP BY column [, ...] ] [ HAVING condition [, ...] ] [ { UNION [ALL] | INTERSECT | EXCEPT } select] [ ORDER BY column [ ASC | DESC ] [, ...] ] [ FOR UPDATE [OF class_name...]] [ LIMIT count [OFFSET|, count]] |