B012 |
Embedded C |
B021 |
Direct SQL |
B128 |
Routine language SQL |
E011 |
Core |
Numeric data types |
E011-01 |
Core |
INTEGER and SMALLINT data types |
E011-02 |
Core |
REAL, DOUBLE PRECISION, and FLOAT data types |
E011-03 |
Core |
DECIMAL and NUMERIC data types |
E011-04 |
Core |
Arithmetic operators |
E011-05 |
Core |
Numeric comparison |
E011-06 |
Core |
Implicit casting among the numeric data types |
E021 |
Core |
Character data types |
E021-01 |
Core |
CHARACTER data type |
E021-02 |
Core |
CHARACTER VARYING data type |
E021-03 |
Core |
Character literals |
E021-04 |
Core |
CHARACTER_LENGTH function |
trims trailing spaces from CHARACTER values before counting |
E021-05 |
Core |
OCTET_LENGTH function |
E021-06 |
Core |
SUBSTRING function |
E021-07 |
Core |
Character concatenation |
E021-08 |
Core |
UPPER and LOWER functions |
E021-09 |
Core |
TRIM function |
E021-10 |
Core |
Implicit casting among the character string types |
E021-11 |
Core |
POSITION function |
E021-12 |
Core |
Character comparison |
E031 |
Core |
Identifiers |
E031-01 |
Core |
Delimited identifiers |
E031-02 |
Core |
Lower case identifiers |
E031-03 |
Core |
Trailing underscore |
E051 |
Core |
Basic query specification |
E051-01 |
Core |
SELECT DISTINCT |
E051-02 |
Core |
GROUP BY clause |
E051-04 |
Core |
GROUP BY can contain columns not in <select list> |
E051-05 |
Core |
Select list items can be renamed |
E051-06 |
Core |
HAVING clause |
E051-07 |
Core |
Qualified * in select list |
E051-08 |
Core |
Correlation names in the FROM clause |
E051-09 |
Core |
Rename columns in the FROM clause |
E061 |
Core |
Basic predicates and search conditions |
E061-01 |
Core |
Comparison predicate |
E061-02 |
Core |
BETWEEN predicate |
E061-03 |
Core |
IN predicate with list of values |
E061-04 |
Core |
LIKE predicate |
E061-05 |
Core |
LIKE predicate ESCAPE clause |
E061-06 |
Core |
NULL predicate |
E061-07 |
Core |
Quantified comparison predicate |
E061-08 |
Core |
EXISTS predicate |
E061-09 |
Core |
Subqueries in comparison predicate |
E061-11 |
Core |
Subqueries in IN predicate |
E061-12 |
Core |
Subqueries in quantified comparison predicate |
E061-13 |
Core |
Correlated subqueries |
E061-14 |
Core |
Search condition |
E071 |
Core |
Basic query expressions |
E071-01 |
Core |
UNION DISTINCT table operator |
E071-02 |
Core |
UNION ALL table operator |
E071-03 |
Core |
EXCEPT DISTINCT table operator |
E071-05 |
Core |
Columns combined via table operators need not have exactly the same data type |
E071-06 |
Core |
Table operators in subqueries |
E081 |
Core |
Basic Privileges |
E081-01 |
Core |
SELECT privilege |
E081-02 |
Core |
DELETE privilege |
E081-03 |
Core |
INSERT privilege at the table level |
E081-04 |
Core |
UPDATE privilege at the table level |
E081-05 |
Core |
UPDATE privilege at the column level |
E081-06 |
Core |
REFERENCES privilege at the table level |
E081-07 |
Core |
REFERENCES privilege at the column level |
E081-08 |
Core |
WITH GRANT OPTION |
E081-09 |
Core |
USAGE privilege |
E081-10 |
Core |
EXECUTE privilege |
E091 |
Core |
Set functions |
E091-01 |
Core |
AVG |
E091-02 |
Core |
COUNT |
E091-03 |
Core |
MAX |
E091-04 |
Core |
MIN |
E091-05 |
Core |
SUM |
E091-06 |
Core |
ALL quantifier |
E091-07 |
Core |
DISTINCT quantifier |
E101 |
Core |
Basic data manipulation |
E101-01 |
Core |
INSERT statement |
E101-03 |
Core |
Searched UPDATE statement |
E101-04 |
Core |
Searched DELETE statement |
E111 |
Core |
Single row SELECT statement |
E121 |
Core |
Basic cursor support |
E121-01 |
Core |
DECLARE CURSOR |
E121-02 |
Core |
ORDER BY columns need not be in select list |
E121-03 |
Core |
Value expressions in ORDER BY clause |
E121-04 |
Core |
OPEN statement |
E121-06 |
Core |
Positioned UPDATE statement |
E121-07 |
Core |
Positioned DELETE statement |
E121-08 |
Core |
CLOSE statement |
E121-10 |
Core |
FETCH statement implicit NEXT |
E121-17 |
Core |
WITH HOLD cursors |
E131 |
Core |
Null value support (nulls in lieu of values) |
E141 |
Core |
Basic integrity constraints |
E141-01 |
Core |
NOT NULL constraints |
E141-02 |
Core |
UNIQUE constraints of NOT NULL columns |
E141-03 |
Core |
PRIMARY KEY constraints |
E141-04 |
Core |
Basic FOREIGN KEY constraint with the NO ACTION default for both referential delete action and referential update action |
E141-06 |
Core |
CHECK constraints |
E141-07 |
Core |
Column defaults |
E141-08 |
Core |
NOT NULL inferred on PRIMARY KEY |
E141-10 |
Core |
Names in a foreign key can be specified in any order |
E151 |
Core |
Transaction support |
E151-01 |
Core |
COMMIT statement |
E151-02 |
Core |
ROLLBACK statement |
E152 |
Core |
Basic SET TRANSACTION statement |
E152-01 |
Core |
SET TRANSACTION statement: ISOLATION LEVEL SERIALIZABLE clause |
E152-02 |
Core |
SET TRANSACTION statement: READ ONLY and READ WRITE clauses |
E153 |
Core |
Updatable queries with subqueries |
E161 |
Core |
SQL comments using leading double minus |
E171 |
Core |
SQLSTATE support |
E182 |
Core |
Host language binding |
F021 |
Core |
Basic information schema |
F021-01 |
Core |
COLUMNS view |
F021-02 |
Core |
TABLES view |
F021-03 |
Core |
VIEWS view |
F021-04 |
Core |
TABLE_CONSTRAINTS view |
F021-05 |
Core |
REFERENTIAL_CONSTRAINTS view |
F021-06 |
Core |
CHECK_CONSTRAINTS view |
F031 |
Core |
Basic schema manipulation |
F031-01 |
Core |
CREATE TABLE statement to create persistent base tables |
F031-02 |
Core |
CREATE VIEW statement |
F031-03 |
Core |
GRANT statement |
F031-04 |
Core |
ALTER TABLE statement: ADD COLUMN clause |
F031-13 |
Core |
DROP TABLE statement: RESTRICT clause |
F031-16 |
Core |
DROP VIEW statement: RESTRICT clause |
F031-19 |
Core |
REVOKE statement: RESTRICT clause |
F032 |
CASCADE drop behavior |
F033 |
ALTER TABLE statement: DROP COLUMN clause |
F034 |
Extended REVOKE statement |
F035 |
REVOKE with CASCADE |
F036 |
REVOKE statement performed by non-owner |
F037 |
REVOKE statement: GRANT OPTION FOR clause |
F038 |
REVOKE of a WITH GRANT OPTION privilege |
F041 |
Core |
Basic joined table |
F041-01 |
Core |
Inner join (but not necessarily the INNER keyword) |
F041-02 |
Core |
INNER keyword |
F041-03 |
Core |
LEFT OUTER JOIN |
F041-04 |
Core |
RIGHT OUTER JOIN |
F041-05 |
Core |
Outer joins can be nested |
F041-07 |
Core |
The inner table in a left or right outer join can also be used in an inner join |
F041-08 |
Core |
All comparison operators are supported (rather than just =) |
F051 |
Core |
Basic date and time |
F051-01 |
Core |
DATE data type (including support of DATE literal) |
F051-02 |
Core |
TIME data type (including support of TIME literal) with fractional seconds precision of at least 0 |
F051-03 |
Core |
TIMESTAMP data type (including support of TIMESTAMP literal) with fractional seconds precision of at least 0 and 6 |
F051-04 |
Core |
Comparison predicate on DATE, TIME, and TIMESTAMP data types |
F051-05 |
Core |
Explicit CAST between datetime types and character string types |
F051-06 |
Core |
CURRENT_DATE |
F051-07 |
Core |
LOCALTIME |
F051-08 |
Core |
LOCALTIMESTAMP |
F052 |
Intervals and datetime arithmetic |
F053 |
OVERLAPS predicate |
F081 |
Core |
UNION and EXCEPT in views |
F111 |
Isolation levels other than SERIALIZABLE |
F112 |
Isolation level READ UNCOMMITTED |
F113 |
Isolation level READ COMMITTED |
F114 |
Isolation level REPEATABLE READ |
F131 |
Core |
Grouped operations |
F131-01 |
Core |
WHERE, GROUP BY, and HAVING clauses supported in queries with grouped views |
F131-02 |
Core |
Multiple tables supported in queries with grouped views |
F131-03 |
Core |
Set functions supported in queries with grouped views |
F131-04 |
Core |
Subqueries with GROUP BY and HAVING clauses and grouped views |
F131-05 |
Core |
Single row SELECT with GROUP BY and HAVING clauses and grouped views |
F171 |
Multiple schemas per user |
F181 |
Core |
Multiple module support |
F191 |
Referential delete actions |
F200 |
TRUNCATE TABLE statement |
F201 |
Core |
CAST function |
F202 |
TRUNCATE TABLE: identity column restart option |
F221 |
Core |
Explicit defaults |
F222 |
INSERT statement: DEFAULT VALUES clause |
F231 |
Privilege tables |
F251 |
Domain support |
F261 |
Core |
CASE expression |
F261-01 |
Core |
Simple CASE |
F261-02 |
Core |
Searched CASE |
F261-03 |
Core |
NULLIF |
F261-04 |
Core |
COALESCE |
F262 |
Extended CASE expression |
F271 |
Compound character literals |
F281 |
LIKE enhancements |
F292 |
UNIQUE null treatment |
F302 |
INTERSECT table operator |
F303 |
INTERSECT DISTINCT table operator |
F304 |
EXCEPT ALL table operator |
F305 |
INTERSECT ALL table operator |
F311 |
Core |
Schema definition statement |
F311-01 |
Core |
CREATE SCHEMA |
F311-02 |
Core |
CREATE TABLE for persistent base tables |
F311-03 |
Core |
CREATE VIEW |
F311-04 |
Core |
CREATE VIEW: WITH CHECK OPTION |
F311-05 |
Core |
GRANT statement |
F312 |
MERGE statement |
F313 |
Enhanced MERGE statement |
F314 |
MERGE statement with DELETE branch |
F321 |
User authorization |
F341 |
Usage tables |
F361 |
Subprogram support |
F381 |
Extended schema manipulation |
F382 |
Alter column data type |
F383 |
Set column not null clause |
F384 |
Drop identity property clause |
F385 |
Drop column generation expression clause |
F386 |
Set identity column generation clause |
F387 |
ALTER TABLE statement: ALTER COLUMN clause |
F388 |
ALTER TABLE statement: ADD/DROP CONSTRAINT clause |
F391 |
Long identifiers |
F392 |
Unicode escapes in identifiers |
F393 |
Unicode escapes in literals |
F394 |
Optional normal form specification |
F401 |
Extended joined table |
F402 |
Named column joins for LOBs, arrays, and multisets |
F404 |
Range variable for common column names |
F405 |
NATURAL JOIN |
F406 |
FULL OUTER JOIN |
F407 |
CROSS JOIN |
F411 |
Time zone specification |
differences regarding literal interpretation |
F421 |
National character |
F431 |
Read-only scrollable cursors |
F432 |
FETCH with explicit NEXT |
F433 |
FETCH FIRST |
F434 |
FETCH LAST |
F435 |
FETCH PRIOR |
F436 |
FETCH ABSOLUTE |
F437 |
FETCH RELATIVE |
F438 |
Scrollable cursors |
F441 |
Extended set function support |
F442 |
Mixed column references in set functions |
F471 |
Core |
Scalar subquery values |
F481 |
Core |
Expanded NULL predicate |
F491 |
Constraint management |
F492 |
Optional table constraint enforcement |
except not-null constraints |
F501 |
Core |
Features and conformance views |
F501-01 |
Core |
SQL_FEATURES view |
F501-02 |
Core |
SQL_SIZING view |
F502 |
Enhanced documentation tables |
F531 |
Temporary tables |
F555 |
Enhanced seconds precision |
F561 |
Full value expressions |
F571 |
Truth value tests |
F591 |
Derived tables |
F611 |
Indicator data types |
F641 |
Row and table constructors |
F651 |
Catalog name qualifiers |
F661 |
Simple tables |
F672 |
Retrospective CHECK constraints |
F690 |
Collation support |
F692 |
Extended collation support |
F701 |
Referential update actions |
F711 |
ALTER domain |
F731 |
INSERT column privileges |
F751 |
View CHECK enhancements |
F761 |
Session management |
F762 |
CURRENT_CATALOG |
F763 |
CURRENT_SCHEMA |
F771 |
Connection management |
F781 |
Self-referencing operations |
F791 |
Insensitive cursors |
F801 |
Full set function |
F850 |
Top-level ORDER BY in query expression |
F851 |
ORDER BY in subqueries |
F852 |
Top-level ORDER BY in views |
F855 |
Nested ORDER BY in query expression |
F856 |
Nested FETCH FIRST in query expression |
F857 |
Top-level FETCH FIRST in query expression |
F858 |
FETCH FIRST in subqueries |
F859 |
Top-level FETCH FIRST in views |
F860 |
Dynamic FETCH FIRST row count |
F861 |
Top-level OFFSET in query expression |
F862 |
OFFSET in subqueries |
F863 |
Nested OFFSET in query expression |
F864 |
Top-level OFFSET in views |
F865 |
Dynamic offset row count in OFFSET |
F867 |
FETCH FIRST clause: WITH TIES option |
F868 |
ORDER BY in grouped table |
F869 |
SQL implementation info population |
S071 |
SQL paths in function and type name resolution |
S090 |
Minimal array support |
S092 |
Arrays of user-defined types |
S095 |
Array constructors by query |
S096 |
Optional array bounds |
S098 |
ARRAY_AGG |
S099 |
Array expressions |
S111 |
ONLY in query expressions |
S201 |
SQL-invoked routines on arrays |
S203 |
Array parameters |
S204 |
Array as result type of functions |
S211 |
User-defined cast functions |
S301 |
Enhanced UNNEST |
S404 |
TRIM_ARRAY |
T031 |
BOOLEAN data type |
T054 |
GREATEST and LEAST |
different null handling |
T055 |
String padding functions |
T056 |
Multi-character TRIM functions |
T061 |
UCS support |
T071 |
BIGINT data type |
T081 |
Optional string types maximum length |
T121 |
WITH (excluding RECURSIVE) in query expression |
T122 |
WITH (excluding RECURSIVE) in subquery |
T131 |
Recursive query |
T132 |
Recursive query in subquery |
T133 |
Enhanced cycle mark values |
T141 |
SIMILAR predicate |
T151 |
DISTINCT predicate |
T152 |
DISTINCT predicate with negation |
T171 |
LIKE clause in table definition |
T172 |
AS subquery clause in table definition |
T173 |
Extended LIKE clause in table definition |
T174 |
Identity columns |
T177 |
Sequence generator support: simple restart option |
T178 |
Identity columns: simple restart option |
T191 |
Referential action RESTRICT |
T201 |
Comparable data types for referential constraints |
T212 |
Enhanced trigger capability |
T213 |
INSTEAD OF triggers |
T214 |
BEFORE triggers |
T215 |
AFTER triggers |
T216 |
Ability to require true search condition before trigger is invoked |
T217 |
TRIGGER privilege |
T241 |
START TRANSACTION statement |
T261 |
Chained transactions |
T271 |
Savepoints |
T281 |
SELECT privilege with column granularity |
T285 |
Enhanced derived column names |
T312 |
OVERLAY function |
T321-01 |
Core |
User-defined functions with no overloading |
T321-02 |
Core |
User-defined stored procedures with no overloading |
T321-03 |
Core |
Function invocation |
T321-04 |
Core |
CALL statement |
T321-05 |
Core |
RETURN statement |
T321-06 |
Core |
ROUTINES view |
T321-07 |
Core |
PARAMETERS view |
T323 |
Explicit security for external routines |
T325 |
Qualified SQL parameter references |
T331 |
Basic roles |
T332 |
Extended roles |
T341 |
Overloading of SQL-invoked functions and SQL-invoked procedures |
T351 |
Bracketed comments |
T431 |
Extended grouping capabilities |
T432 |
Nested and concatenated GROUPING SETS |
T433 |
Multi-argument GROUPING function |
T434 |
GROUP BY DISTINCT |
T441 |
ABS and MOD functions |
T461 |
Symmetric BETWEEN predicate |
T491 |
LATERAL derived table |
T501 |
Enhanced EXISTS predicate |
T521 |
Named arguments in CALL statement |
T523 |
Default values for INOUT parameters of SQL-invoked procedures |
T524 |
Named arguments in routine invocations other than a CALL statement |
T525 |
Default values for parameters of SQL-invoked functions |
T551 |
Optional key words for default syntax |
T581 |
Regular expression substring function |
T591 |
UNIQUE constraints of possibly null columns |
T611 |
Elementary OLAP operations |
T612 |
Advanced OLAP operations |
T613 |
Sampling |
T614 |
NTILE function |
T615 |
LEAD and LAG functions |
T617 |
FIRST_VALUE and LAST_VALUE functions |
T620 |
WINDOW clause: GROUPS option |
T621 |
Enhanced numeric functions |
T622 |
Trigonometric functions |
T623 |
General logarithm functions |
T624 |
Common logarithm functions |
T626 |
ANY_VALUE |
T627 |
Window framed COUNT DISTINCT |
T631 |
Core |
IN predicate with one list element |
T651 |
SQL-schema statements in SQL routines |
T653 |
SQL-schema statements in external routines |
T655 |
Cyclically dependent routines |
T661 |
Non-decimal integer literals |
T662 |
Underscores in numeric literals |
T670 |
Schema and data statement mixing |
T803 |
String-based JSON |
T811 |
Basic SQL/JSON constructor functions |
T812 |
SQL/JSON: JSON_OBJECTAGG |
T813 |
SQL/JSON: JSON_ARRAYAGG with ORDER BY |
T814 |
Colon in JSON_OBJECT or JSON_OBJECTAGG |
T821 |
Basic SQL/JSON query operators |
T822 |
SQL/JSON: IS JSON WITH UNIQUE KEYS predicate |
T823 |
SQL/JSON: PASSING clause |
T825 |
SQL/JSON: ON EMPTY and ON ERROR clauses |
T826 |
General value expression in ON ERROR or ON EMPTY clauses |
T827 |
JSON_TABLE: sibling NESTED COLUMNS clauses |
T828 |
JSON_QUERY |
T829 |
JSON_QUERY: array wrapper options |
T830 |
Enforcing unique keys in SQL/JSON constructor functions |
T831 |
SQL/JSON path language: strict mode |
T832 |
SQL/JSON path language: item method |
T833 |
SQL/JSON path language: multiple subscripts |
T834 |
SQL/JSON path language: wildcard member accessor |
T835 |
SQL/JSON path language: filter expressions |
T836 |
SQL/JSON path language: starts with predicate |
T837 |
SQL/JSON path language: regex_like predicate |
T840 |
Hex integer literals in SQL/JSON path language |
T851 |
SQL/JSON: optional keywords for default syntax |
T865 |
SQL/JSON item method: bigint() |
T866 |
SQL/JSON item method: boolean() |
T867 |
SQL/JSON item method: date() |
T868 |
SQL/JSON item method: decimal() |
T869 |
SQL/JSON item method: decimal() with precision and scale |
T870 |
SQL/JSON item method: integer() |
T871 |
SQL/JSON item method: number() |
T872 |
SQL/JSON item method: string() |
T873 |
SQL/JSON item method: time() |
T874 |
SQL/JSON item method: time_tz() |
T875 |
SQL/JSON item method: time precision |
T876 |
SQL/JSON item method: timestamp() |
T877 |
SQL/JSON item method: timestamp_tz() |
T878 |
SQL/JSON item method: timestamp precision |
T879 |
JSON in equality operations |
with jsonb |
T880 |
JSON in grouping operations |
with jsonb |
X010 |
XML type |
X011 |
Arrays of XML type |
X014 |
Attributes of XML type |
X016 |
Persistent XML values |
X020 |
XMLConcat |
X031 |
XMLElement |
X032 |
XMLForest |
X034 |
XMLAgg |
X035 |
XMLAgg: ORDER BY option |
X036 |
XMLComment |
X037 |
XMLPI |
X038 |
XMLText |
supported except for RETURNING |
X040 |
Basic table mapping |
X041 |
Basic table mapping: null absent |
X042 |
Basic table mapping: null as nil |
X043 |
Basic table mapping: table as forest |
X044 |
Basic table mapping: table as element |
X045 |
Basic table mapping: with target namespace |
X046 |
Basic table mapping: data mapping |
X047 |
Basic table mapping: metadata mapping |
X048 |
Basic table mapping: base64 encoding of binary strings |
X049 |
Basic table mapping: hex encoding of binary strings |
X050 |
Advanced table mapping |
X051 |
Advanced table mapping: null absent |
X052 |
Advanced table mapping: null as nil |
X053 |
Advanced table mapping: table as forest |
X054 |
Advanced table mapping: table as element |
X055 |
Advanced table mapping: with target namespace |
X056 |
Advanced table mapping: data mapping |
X057 |
Advanced table mapping: metadata mapping |
X058 |
Advanced table mapping: base64 encoding of binary strings |
X059 |
Advanced table mapping: hex encoding of binary strings |
X060 |
XMLParse: character string input and CONTENT option |
X061 |
XMLParse: character string input and DOCUMENT option |
X069 |
XMLSerialize: INDENT |
X070 |
XMLSerialize: character string serialization and CONTENT option |
X071 |
XMLSerialize: character string serialization and DOCUMENT option |
X072 |
XMLSerialize: character string serialization |
X090 |
XML document predicate |
X120 |
XML parameters in SQL routines |
X121 |
XML parameters in external routines |
X221 |
XML passing mechanism BY VALUE |
X301 |
XMLTable: derived column list option |
X302 |
XMLTable: ordinality column option |
X303 |
XMLTable: column default option |
X304 |
XMLTable: passing a context item |
must be XML DOCUMENT |
X400 |
Name and identifier mapping |
X410 |
Alter column data type: XML type |