| B012 | Â | Embedded C | Â |
| B021 | Â | Direct 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 | Â |
| 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 | Â |
| F034-01 | Â | REVOKE statement performed by other than the owner of a schema object | Â |
| F034-02 | Â | REVOKE statement: GRANT OPTION FOR clause | Â |
| F034-03 | Â | REVOKE statement to revoke a privilege that the grantee has WITH GRANT OPTION | Â |
| 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 | Enhanced datetime facilities | Intervals and datetime arithmetic | Â |
| F053 | Â | OVERLAPS predicate | Â |
| F081 | Core | UNION and EXCEPT in views | Â |
| F111 | Â | Isolation levels other than SERIALIZABLE | Â |
| F111-01 | Â | READ UNCOMMITTED isolation level | Â |
| F111-02 | Â | READ COMMITTED isolation level | Â |
| F111-03 | Â | REPEATABLE READ isolation level | Â |
| 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 | Â |
| F191 | Enhanced integrity management | 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 | Â |
| F231-01 | Â | TABLE_PRIVILEGES view | Â |
| F231-02 | Â | COLUMN_PRIVILEGES view | Â |
| F231-03 | Â | USAGE_PRIVILEGES view | Â |
| 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 | Â |
| F302 | Â | INTERSECT table operator | Â |
| F302-01 | Â | INTERSECT DISTINCT table operator | Â |
| F302-02 | Â | INTERSECT ALL table operator | Â |
| F304 | Â | EXCEPT ALL table operator | Â |
| 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 | Â |
| F321 | Â | User authorization | Â |
| F361 | Â | Subprogram support | Â |
| F381 | Â | Extended schema manipulation | Â |
| F381-01 | Â | ALTER TABLE statement: ALTER COLUMN clause | Â |
| F381-02 | Â | ALTER TABLE statement: ADD CONSTRAINT clause | Â |
| F381-03 | Â | ALTER TABLE statement: DROP CONSTRAINT clause | Â |
| F382 | Â | Alter column data type | Â |
| F383 | Â | Set column not null clause | Â |
| F384 | Â | Drop identity property clause | Â |
| F386 | Â | Set identity column generation clause | Â |
| F391 | Â | Long identifiers | Â |
| F392 | Â | Unicode escapes in identifiers | Â |
| F393 | Â | Unicode escapes in literals | Â |
| F401 | Â | Extended joined table | Â |
| F401-01 | Â | NATURAL JOIN | Â |
| F401-02 | Â | FULL OUTER JOIN | Â |
| F401-04 | Â | CROSS JOIN | Â |
| F402 | Â | Named column joins for LOBs, arrays, and multisets | Â |
| F411 | Enhanced datetime facilities | Time zone specification | differences regarding literal interpretation |
| F421 | Â | National character | Â |
| F431 | Â | Read-only scrollable cursors | Â |
| F431-01 | Â | FETCH with explicit NEXT | Â |
| F431-02 | Â | FETCH FIRST | Â |
| F431-03 | Â | FETCH LAST | Â |
| F431-04 | Â | FETCH PRIOR | Â |
| F431-05 | Â | FETCH ABSOLUTE | Â |
| F431-06 | Â | FETCH RELATIVE | Â |
| F441 | Â | Extended set function support | Â |
| F442 | Â | Mixed column references in set functions | Â |
| F471 | Core | Scalar subquery values | Â |
| F481 | Core | Expanded NULL predicate | Â |
| F491 | Enhanced integrity management | Constraint management | Â |
| F501 | Core | Features and conformance views | Â |
| F501-01 | Core | SQL_FEATURES view | Â |
| F501-02 | Core | SQL_SIZING view | Â |
| F501-03 | Core | SQL_LANGUAGES view | Â |
| F502 | Â | Enhanced documentation tables | Â |
| F502-01 | Â | SQL_SIZING_PROFILES view | Â |
| F502-02 | Â | SQL_IMPLEMENTATION_INFO view | Â |
| F502-03 | Â | SQL_PACKAGES view | Â |
| F531 | Â | Temporary tables | Â |
| F555 | Enhanced datetime facilities | 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 | but no character set support |
| F692 | Â | Extended collation support | Â |
| F701 | Enhanced integrity management | 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 clause> in <query expression> | Â |
| F851 | Â | <order by clause> in subqueries | Â |
| F852 | Â | Top-level <order by clause> in views | Â |
| F855 | Â | Nested <order by clause> in <query expression> | Â |
| F856 | Â | Nested <fetch first clause> in <query expression> | Â |
| F857 | Â | Top-level <fetch first clause> in <query expression> | Â |
| F858 | Â | <fetch first clause> in subqueries | Â |
| F859 | Â | Top-level <fetch first clause> in views | Â |
| F860 | Â | <fetch first row count> in <fetch first clause> | Â |
| F861 | Â | Top-level <result offset clause> in <query expression> | Â |
| F862 | Â | <result offset clause> in subqueries | Â |
| F863 | Â | Nested <result offset clause> in <query expression> | Â |
| F864 | Â | Top-level <result offset clause> in views | Â |
| F865 | Â | <offset row count> in <result offset clause> | Â |
| S071 | Enhanced object support | SQL paths in function and type name resolution | Â |
| S092 | Â | Arrays of user-defined types | Â |
| S095 | Â | Array constructors by query | Â |
| S096 | Â | Optional array bounds | Â |
| S098 | Â | ARRAY_AGG | Â |
| S111 | Enhanced object support | ONLY in query expressions | Â |
| S201 | Â | SQL-invoked routines on arrays | Â |
| S201-01 | Â | Array parameters | Â |
| S201-02 | Â | Array as result type of functions | Â |
| S211 | Enhanced object support | User-defined cast functions | Â |
| S301 | Â | Enhanced UNNEST | Â |
| T031 | Â | BOOLEAN data type | Â |
| T071 | Â | BIGINT data type | Â |
| T121 | Â | WITH (excluding RECURSIVE) in query expression | Â |
| T122 | Â | WITH (excluding RECURSIVE) in subquery | Â |
| T131 | Â | Recursive query | Â |
| T132 | Â | Recursive query in subquery | Â |
| 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 | Enhanced integrity management | Referential action RESTRICT | Â |
| T201 | Enhanced integrity management | Comparable data types for referential constraints | Â |
| T211-01 | Active database, Enhanced integrity management | Triggers activated on UPDATE, INSERT, or DELETE of one base table | Â |
| T211-02 | Active database, Enhanced integrity management | BEFORE triggers | Â |
| T211-03 | Active database, Enhanced integrity management | AFTER triggers | Â |
| T211-04 | Active database, Enhanced integrity management | FOR EACH ROW triggers | Â |
| T211-05 | Active database, Enhanced integrity management | Ability to specify a search condition that must be true before the trigger is invoked | Â |
| T211-07 | Active database, Enhanced integrity management | TRIGGER privilege | Â |
| T212 | Enhanced integrity management | Enhanced trigger capability | Â |
| T213 | Â | INSTEAD OF triggers | Â |
| T231 | Â | Sensitive cursors | Â |
| 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-06 | Core | ROUTINES view | Â |
| T321-07 | Core | PARAMETERS view | Â |
| T323 | Â | Explicit security for external routines | Â |
| T325 | Â | Qualified SQL parameter references | Â |
| T331 | Â | Basic roles | Â |
| T341 | Â | Overloading of SQL-invoked functions and procedures | Â |
| T351 | Â | Bracketed SQL comments (/*...*/ comments) | Â |
| T431 | OLAP | Extended grouping capabilities | Â |
| T432 | Â | Nested and concatenated GROUPING SETS | Â |
| T433 | Â | Multiargument GROUPING function | Â |
| 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 | OLAP | Elementary OLAP operations | Â |
| T613 | Â | Sampling | Â |
| T614 | Â | NTILE function | Â |
| T615 | Â | LEAD and LAG functions | Â |
| T617 | Â | FIRST_VALUE and LAST_VALUE function | Â |
| T620 | Â | WINDOW clause: GROUPS option | Â |
| T621 | Â | Enhanced numeric functions | Â |
| T622 | Â | Trigonometric functions | Â |
| T623 | Â | General logarithm functions | Â |
| T624 | Â | Common logarithm functions | Â |
| T631 | Core | IN predicate with one list element | Â |
| T651 | Â | SQL-schema statements in SQL routines | Â |
| T655 | Â | Cyclically dependent routines | Â |
| T831 | Â | SQL/JSON path language: strict mode | Â |
| 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 | Â |
| 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 | Â |
| X040 | Â | Basic table mapping | Â |
| X041 | Â | Basic table mapping: nulls 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: nulls 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 | Â |
| 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 | Â |