| B011 | Embedded Ada | + | + | |
| B012 | Embedded C | + | + | |
| B013 | Embedded COBOL | + | + | |
| B014 | Embedded Fortran | + | + | |
| B015 | Embedded MUMPS | − | − | |
| B016 | Embedded Pascal | + | + | |
| B017 | Embedded PL/I | − | − | |
| B021 | Direct SQL | + | + | |
| B031 | Basic dynamic SQL | * | * | Not all standard features are supported |
| B032 | Extended dynamic SQL | − | − | |
| B032-01 | <describe input statement> | − | − | |
| B033 | Untyped SQL-invoked function arguments | − | − | |
| B034 | Dynamic specification of cursor attributes | − | − | |
| B041 | Extensions to embedded SQL exception declarations | − | − | |
| B051 | Enhanced execution rights | − | − | |
| B111 | Module language Ada | − | − | |
| B112 | Module language C | − | − | |
| B113 | Module language COBOL | − | − | |
| B114 | Module language Fortran | − | − | |
| B115 | Module language MUMPS | − | − | |
| B116 | Module language Pascal | − | − | |
| B117 | Module language PL/I | − | − | |
| B121 | Routine language Ada | − | − | |
| B122 | Routine language C | + | + | |
| B123 | Routine language COBOL | − | − | |
| B124 | Routine language Fortran | − | − | |
| B125 | Routine language MUMPS | − | − | |
| B126 | Routine language Pascal | + | + | |
| B127 | Routine language PL/I | − | − | |
| B128 | Routine language SQL | + | + | |
| F032 | CASCADE drop behavior | − | − | |
| F033 | ALTER TABLE statement: DROP COLUMN clause | + | + | |
| F034 | Extended REVOKE statement | * | * | REVOKE CASCADE is not supported |
| 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 | ? | ? | |
| F052 | Intervals and datetime arithmetic | * | * | Intervals are not supported |
| F053 | OVERLAPS predicate | − | − | |
| F111 | Isolation levels other than SERIALIZABLE | * | * | |
| F111-01 | READ UNCOMMITTED isolation level | − | − | |
| F111-02 | READ COMMITTED isolation level | + | + | |
| F111-03 | REPEATABLE READ isolation level | + | + | Available as SNAPSHOT |
| F121 | Basic diagnostics management | − | − | |
| F121-01 | GET DIAGNOSTICS statement | − | − | |
| F121-02 | SET TRANSACTION statement: DIAGNOSTICS SIZE clause | − | − | |
| F171 | Multiple schemas per user | − | − | |
| F191 | Referential delete actions | + | + | |
| 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 | + | + | |
| F262 | Extended CASE expression | − | − | |
| F263 | Comma-separated predicates in simple CASE expression | − | − | |
| F271 | Compound character literals | − | − | |
| F281 | LIKE enhancements | + | + | |
| F291 | UNIQUE predicate | − | − | |
| F301 | CORRESPONDING in query expressions | − | − | |
| F302 | INTERSECT table operator | − | − | |
| F302-01 | INTERSECT DISTINCT table operator | − | − | |
| F302-02 | INTERSECT ALL table operator | − | − | |
| F304 | EXCEPT ALL table operator | − | − | |
| F312 | MERGE statement | − | − | |
| F321 | User authorization | * | * | Only CURRENT_USER is supported |
| F341 | Usage tables | ? | ? | |
| 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 | + | + | |
| F391 | Long identifiers | * | * | Maximum identifier length is equal to 31 |
| 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 | Time zone specification | − | − | |
| F421 | National character | * | * | Neither national string literals nor NCHAR VARYING datatype are supported |
| 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 | + | + | |
| F451 | Character set definition | − | − | |
| F461 | Named character sets | + | + | |
| F491 | Constraint management | + | + | |
| F502 | Enhanced documentation tables | − | − | |
| F502-01 | SQL_SIZING_PROFILES view | − | − | |
| F502-02 | SQL_IMPLEMENTATION_INFO view | − | − | |
| F502-03 | SQL_PACKAGES view | − | − | |
| F521 | Assertions | − | − | |
| F531 | Temporary tables | − | − | |
| F555 | Enhanced seconds precision | * | * | Maximum supported precision is equal to 3, precision in datatype declarations are not supported |
| 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 | − | − | |
| F671 | Subqueries in CHECK | + | + | |
| F672 | Retrospective check constraints | + | + | |
| F691 | Collation and translation | * | * | CREATE/DROP COLLATION is not supported |
| F692 | Enhanced collation support | + | + | |
| F693 | SQL-session and client module collations | − | − | |
| F695 | Translation support | − | − | |
| F696 | Additional translation documentation | − | − | |
| F701 | Referential update actions | + | + | |
| F711 | ALTER domain | + | + | |
| F721 | Deferrable constraints | − | − | |
| F731 | INSERT column privileges | − | − | |
| F741 | Referential MATCH types | − | − | |
| F751 | View CHECK enhancements | − | − | |
| F761 | Session management | − | − | |
| F771 | Connection management | − | − | |
| F781 | Self-referencing operations | + | + | |
| F791 | Insensitive cursors | − | − | |
| F801 | Full set function | − | − | |
| F813 | Extended flagging | − | − | |
| F821 | Local table references | − | − | |
| F831 | Full cursor update | − | − | |
| F831-01 | Updateable scrollable cursors | − | − | |
| F831-02 | Updateable ordered cursors | − | − | |
| S023 | Basic structured types | − | − | |
| S024 | Enhanced structured types | − | − | |
| S025 | Final structured types | − | − | |
| S026 | Self-referencing structured types | − | − | |
| S027 | Create method by specific method name | − | − | |
| S028 | Permutable UDT options list | − | − | |
| S041 | Basic reference types | − | − | |
| S043 | Enhanced reference types | − | − | |
| S051 | Create table of type | − | − | |
| S071 | SQL paths in function and type name resolution | − | − | |
| S081 | Subtables | − | − | |
| S091 | Basic array support | * | * | |
| S091-01 | Arrays of built-in data types | * | * | Implementation is non-standard and limited to DSQL only |
| S091-02 | Arrays of distinct types | − | − | |
| S091-03 | Array expressions | − | − | |
| S092 | Arrays of user-defined types | − | − | |
| S094 | Arrays of reference types | − | − | |
| S095 | Array constructors by query | − | − | |
| S096 | Optional array bounds | − | − | |
| S097 | Array element assignment | − | − | |
| S111 | ONLY in query expressions | − | − | |
| S151 | Type predicate | − | − | |
| S161 | Subtype treatment | − | − | |
| S162 | Subtype treatment for references | − | − | |
| S201 | SQL-invoked routines on arrays | − | − | |
| S201-01 | Array parameters | − | − | |
| S201-02 | Array as result type of functions | − | − | |
| S202 | SQL-invoked routines on multisets | − | − | |
| S211 | User-defined cast functions | − | − | |
| S231 | Structured type locators | − | − | |
| S232 | Array locators | − | − | |
| S233 | Multiset locators | − | − | |
| S241 | Transform functions | − | − | |
| S242 | Alter transform statement | − | − | |
| S251 | User-defined orderings | − | − | |
| S261 | Specific type method | − | − | |
| S271 | Basic multiset support | − | − | |
| S272 | Multisets of user-defined types | − | − | |
| S274 | Multisets of reference types | − | − | |
| S275 | Advanced multiset support | − | − | |
| S281 | Nested collection types | − | − | |
| S291 | Unique constraint on entire row | − | − | |
| T011 | Timestamp in Information Schema | − | − | |
| T031 | BOOLEAN data type | − | − | |
| T041 | Basic LOB data type support | * | * | |
| T041-01 | BLOB data type | + | + | |
| T041-02 | CLOB data type | * | * | Available as BLOB SUB_TYPE TEXT |
| T041-03 | POSITION, LENGTH, LOWER, TRIM, UPPER, and SUBSTRING functions for LOB data types | * | * | Partially supported |
| T041-04 | Concatenation of LOB data types | − | − | |
| T041-05 | LOB locator: non-holdable | − | − | |
| T042 | Extended LOB data type support | − | − | |
| T051 | Row types | − | − | |
| T052 | MAX and MIN for row types | − | − | |
| T053 | Explicit aliases for all-fields reference | − | − | |
| T061 | UCS support | − | − | |
| T071 | BIGINT data type | + | + | |
| T111 | Updatable joins, unions, and columns | − | − | |
| 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 | − | − | |
| T175 | Generated columns | − | − | |
| T176 | Sequence generator support | + | + | |
| T191 | Referential action RESTRICT | + | + | |
| T201 | Comparable data types for referential constraints | * | * | Numerics, timestamps and strings are not considered comparable |
| T211 | Basic trigger capability | * | * | |
| T211-01 | Triggers activated on UPDATE, INSERT, or DELETE of one base table | + | + | |
| T211-02 | BEFORE triggers | + | + | |
| T211-03 | AFTER triggers | + | + | |
| T211-04 | FOR EACH ROW triggers | + | + | |
| T211-05 | Ability to specify a search condition that shall be True before the trigger is invoked | − | − | |
| T211-06 | Support for run-time rules for the interaction of triggers and constraints | ? | ? | |
| T211-07 | TRIGGER privilege | − | − | |
| T211-08 | Multiple triggers for the same event are executed in the order in which they were created in the catalog | * | * | Execution order is specified by the developer |
| T212 | Enhanced trigger capability | − | − | |
| T231 | Sensitive cursors | − | − | |
| T241 | START TRANSACTION statement | + | + | Available as SET TRANSACTION |
| T251 | SET TRANSACTION statement: LOCAL option | − | − | |
| T261 | Chained transactions | − | − | |
| T271 | Savepoints | + | + | |
| T272 | Enhanced savepoint management | − | − | |
| T281 | SELECT privilege with column granularity | − | − | |
| T301 | Functional dependencies | + | + | |
| T312 | OVERLAY function | − | − | |
| T322 | Overloading of SQL-invoked functions and procedures | − | − | |
| T323 | Explicit security for external routines | − | − | |
| T324 | Explicit security for SQL routines | − | − | |
| T325 | Qualified SQL parameter references | − | − | |
| T326 | Table functions | − | − | |
| T331 | Basic roles | * | * | SET ROLE is not supported |
| T332 | Extended roles | * | * | GRANTED BY CURRENT_ROLE is not supported |
| T351 | Bracketed SQL comments (/*...*/ 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 | − | − | |
| T471 | Result sets return value | − | − | |
| T491 | LATERAL derived table | − | − | |
| T501 | Enhanced EXISTS predicate | + | + | |
| T511 | Transaction counts | − | − | |
| T551 | Optional keywords for default syntax | + | + | |
| T561 | Holdable locators | − | − | |
| T571 | Array-returning external SQL-invoked functions | − | − | |
| T572 | Multiset-returning external SQL-invoked functions | − | − | |
| T581 | Regular expression substring function | − | − | |
| T591 | UNIQUE constraints of possibly null columns | + | + | |
| T601 | Local cursor references | − | − | |
| T611 | Elementary OLAP operations | − | − | |
| T612 | Advanced OLAP operations | − | − | |
| T613 | Sampling | − | − | |
| T621 | Enhanced numeric functions | − | − | |
| T641 | Multiple column assignment | − | − | |
| T651 | SQL-schema statements in SQL routines | − | − | |
| T652 | SQL-dynamic statements in SQL routines | + | + | |
| T653 | SQL-schema statements in external routines | − | − | |
| T654 | SQL-dynamic statements in external routines | − | − | |
| T655 | Cyclically dependent routines | + | + | |