I have been looking at
ftp://ftp.be.postgresql.org/postgresql/doc/7.2/reference-7.2-A4.pdf
and on page 70, CREATE TABLE, Compatibility, I find a statement that
suggests the writer was under a misapprehension.
You say first:
<quote>
The CREATE TABLE conforms to SQL92 Intermediate and to a subset of SQL99,
with exceptions listed below and in the descriptions above.
Temporary Tables
In addition to the local temporary table, SQL92 also defines a CREATE GLOBAL
TEMPORARY TABLE statement. Global temporary tables are also visible to other
sessions.
</quote>
Although your temporary tables seem to be effectively the same as IBM DB2's
DECLARE GLOBAL TEMPORARY TABLE
and Oracle's
CREATE GLOBAL TEMPORARY TABLE
However, none of these conform to SQL:1992 at any level (or to the temporary
tables feature of SQL:1999), so you're in good company, but apparently
mistaken.
I shall be happy to try to elucidate further if you're interested, as I have
been scrutinizing this area of the SQL standard recently.
FYI, though not a member of the ANSI committee, I do contribute to the ISO
working group.
Mike Sykes.