The American National Standards Institute (ANSI) standardized SQL in 1986 (X3.135) and the International Standards
Organization (ISO) standardized it in 1987. The United States government's Federal Information Processing Standard
) adopted the ANSI/ISO standard. In 1989, a revised standard known commonly as
, was published.
Due partially to conflicting interests from commercial vendors,
much of the SQL89 standard was intentionally left incomplete, and many
features were labeled implementor-defined. In order to strengthen the
standard, the ANSI committee revised its previous work with the
standard ratified in 1992 (also called
). This standard addressed several weaknesses
in SQL89 and set forth conceptual SQL features which at that
time exceeded the capabilities of any existing RDBMS implementation.
In fact, the SQL92 standard was approximately six times the length of
its predecessor. As a result of this disparity, the authors defined
three levels of SQL92 compliance:
(only the barest improvements to SQL89),
(a generally achievable set of
major advancements), and
with the SQL92 features).
More recently, in 1999, the ANSI/ISO released the
standard (also called
standard addresses some of the more advanced and previously
ignored areas of modern SQL systems, such as object-relational
database concepts, call level interfaces, and integrity management.
SQL99 replaces the SQL92 levels of compliance with its own degrees of
PostgreSQL presently conforms to most of the Entry-level SQL92
standard, as well as many of the Intermediate- and Full-level features.
Additionally, many of the features new in SQL99 are quite similar to the object-relational concepts pioneered by PostgreSQL (arrays, functions, and inheritance).