Feature ids of standard features are stable across SQL versions.
| Feature ID | Description | Notes |
| B012 | Embedded C | Implies E182 |
| B013 | Embedded COBOL | |
| B021 | Direct SQL | Oracle implements this feature with SQL Plus |
| B031 | Basic dynamic SQL | |
| B032 | Extended dynamic SQL | Implies B031 |
| B034 | Dynamic specification of cursor attributes | Implies B031 |
| B035 | Non-extended descriptor names | Implies B031 |
| B122 | Routine language C | |
| B128 | Routine language SQL | Oracle implements this feature with PL/SQL |
| B200 | Polymorphic table functions (PTF) | Optional feature with SQL:2016 |
| E011 | Numeric types | |
| E021 | Character string types | |
| E031 | Identifiers | |
| E051 | Basic query specification | |
| E061 | Basic predicates and search conditions | |
| E071 | Basic query expressions | |
| E081 | Basic privileges | |
| E091 | Set functions | |
| E101 | Basic data manipulation | |
| E111 | Single row SELECT statement | |
| E121 | Basic cursor support | |
| E131 | Null value support (nulls in lieu of values) | |
| E141 | Basic integrity constraints | |
| E151 | Transaction support | |
| E161 | SQL comments using leading double minus (--) | |
| E182 | Host language binding | Implied by features B011…B017 (Embedded language) |
| F032 | Cascade drop behaviour | |
| F033 | alter table … drop column | |
| F034 | Extended revoke statement | |
| F041 | Basic joined table | F041-01: inner join, F041-01: full outer join, F041-03: left outer join, F041-04: right outer join. Compare F401 |
| F051 | Basic date and time | |
| F052 | Intervals and datetime arithmetics | |
| F081 | UNION and EXCEPT in views | |
| F111 | Isolation levels other than serializable | |
| F121 | Basic diagnostic management | |
| F131 | Grouped operations | |
| F191 | Referential delete actions | |
| F200 | truncate table | |
| F201 | cast function | |
| F221 | Explicit defaults | |
| F231 | Privilege tables (table_privileges and column_privileges) | |
| F261 | CASE expression | |
| F281 | like enhancements | |
| F291 | unique predicate | |
| F302 | intersect table operator | |
| F311 | Schema definition statement | |
| F312 | merge statement | |
| F313 | Enhanced MERGE statement | Implies F312 |
| F314 | merge statement with delete branch | Implies F312 |
| F321 | User authorization (session_user, current_user, system_user, set session authorization) | |
| F341 | Usage tables | |
| F381 | Extended schema manipulation | |
| F382 | alter column <datatype> | Implies F381 |
| F383 | Set column not null clause | Implies F381 |
| F384 | Drop identity property clause | Implies F381 |
| F385 | Drop column generation expression clause | Implies F381 |
| F386 | Set identity column generation clause | Implies F381 |
| F391 | Long identifiers | |
| F393 | Unicode escapes in literals | |
| F394 | Optional normal form specification | |
| F401 | Extended joined tables | F401-01: natural join, F401-02: full outer join, F401-03: union join, F401-04: cross join`. Compare F041 |
| F402 | Named column joins for LOBs, arrays and multisets | |
| F403 | Partitioned join tables | |
| F404 | Range variable for common column names | Optional feature with SQL:2016 |
| F411 | Time zone specification | |
| F421 | National character | |
| F431 | Read-only scrollable cursors | Apparently |
| F442 | Mixed column references in set functions | |
| F461 | Named character sets | |
| F471 | Scalar subquery values | |
| F481 | Expanded null predicate | |
| F491 | Constraint management | |
| F492 | Optional table constraint enforcement | |
| F531 | Temporary tables | |
| F555 | Enhanced seconds precision | |
| F561 | Full value expressions | |
| F571 | Truth value tests (such as is not true?) | Oracle has lnnvl |
| F591 | Derived tables | |
| F641 | Row and table constructors | |
| F651 | Catalog name qualifiers | Compare F762 |
| F690 | Collation support | |
| F693 | SQL-sessions and client module collations | |
| F695 | Translation support | |
| F721 | Deferrable constraints | |
| F731 | INSERT column privileges | |
| F761 | Session management | |
| F762 | CURRENT_CATALOG | Compare F651 |
| F763 | CURRENT_SCHEMA | |
| F771 | Connection management | |
| F781 | Self-referencing operations | |
| F801 | Full set function | |
| F831 | Full cursor update | |
| F841 | like_regex predicate | Oracle (and others?): regexp_like |
| F842 | occurrences_regex function | regexp_count |
| F843 | position_regex function | regexp_instr |
| F844 | substring_regex function | regexp_substr |
| F845 | translate_regex function | regexp_replace |
| 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 a <query expression> | |
| F858 | <fetch first clause> in subqueries | |
| F859 | Top-level <fetch first clause> in views | |
| F860 | Dynamic <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 | Dynamic <offset row count> in <result offset clause> | |
| F866 | FETCH FIRST clause: PERCENT option | |
| F867 | FETCH FIRST clause: WITH TIES option | |
| R010 | Row pattern recognizion: FROM clause | |
| R020 | Row pattern recognizion: WINDOW clause | |
| S023 | Basic structured types | |
| S024 | Enhanced structured types | |
| S025 | Final structured types | |
| S026 | Self-referencing structured types | |
| S041 | Basic reference types | |
| S043 | Enhanced reference types | |
| S051 | Create table of type | |
| S081 | Subtables | |
| S091 | Array types | |
| S092 | Arrays of user-defined types | |
| S094 | Arrays of reference types | |
| S095 | Array constructors by query | |
| S097 | Array element assignment | |
| S098 | array_agg | Compare with T625 (listagg) |
| S111 | only in query expressions | |
| S151 | Type predicate | |
| S161 | Subtype treatment | |
| S162 | Subtype treatment for references | |
| S201 | SQL-invoked routines on arrays | |
| S202 | SQL-invoked routines on multisets | |
| S232 | Array locators | |
| S233 | Multiset locators | |
| S241 | Transform functions | |
| S251 | User-defined orderings | |
| S261 | Specified 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 | |
| S401 | Distinct types based on array types | |
| S403 | MAX_CARDINALITY | |
| S404 | TRIM_ARRAY | |
| T031 | Boolean data type | |
| T041 | Basic LOB data type support | |
| T042 | Extended LOB support | |
| T051 | Row types | |
| T061 | UCS support | |
| T071 | BIGINT data type | |
| T076 | DECFLOAT data type | Optional feature with SQL:2016 |
| 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 | |
| T172 | AS subquery clause in table definition | |
| T174 | Identity columns | |
| T175 | Generated columns | |
| T176 | Sequence generator support | |
| T178 | Identity columns: simple restart option | |
| T180 | System-versioned tables | |
| T201 | Comparable data types for referential constraints | |
| T211 | Basic trigger capability | |
| T212 | Enhanced trigger capability | |
| T213 | INSTEAD OF triggers | |
| T241 | START TRANSACTION statement | |
| T271 | Savepoints | |
| T285 | Enhanced derived column names | |
| T323 | Explicit security for external routines | |
| T324 | Explicit security for SQL routines | |
| T325 | Qualified SQL parameter reference | |
| T326 | Table functions | |
| T331 | Basic roles | |
| T341 | Overloading of SQL-invoked functions and procedures | |
| T351 | Bracketed comments | |
| T431 | Extended grouping capabilities | |
| T432 | Nested and concatenated GROUPING SETS | |
| T433 | Multiargument function GROUPING | |
| T441 | ABS and MOD functions | |
| T471 | Result sets return value | |
| T491 | LATERAL derived tables | |
| T501 | Enhanced EXISTS predicate | |
| T511 | Transaction counts | |
| T571 | Array-returning external SQL-invoked function | |
| T572 | Multiset-returning external SQL-invoked function | |
| T581 | Regular expressions substring functions | |
| T591 | UNIQUE constraints of possibly null columns | |
| T611 | Elementary OLAP operations | |
| T612 | Advanced OLAP operations | |
| T613 | Sampling (tablesample) | Implemented in Oracle SQL with sample. |
| T614 | ntile function | |
| T615 | LAG and LEAD analytic functions | |
| T616 | Null treatment option for lag and lead functions | |
| T617 | first_value and last_value functions | |
| T618 | nth_value function | |
| T621 | Enhanced numeric functions | |
| T622 | Trigonometric functions | Optional feature with SQL:2016 |
| T623 | General logarithm functions | Optional feature with SQL:2016 |
| T624 | Common logarithm functions | Optional feature with SQL:2016 |
| T625 | LISTAGG | Optional feature with SQL:2016. Compare with S098 (array_agg) |
| T641 | Multiple column assignment | |
| T652 | SQL-dynamic statements in SQL routines. | |
| T654 | SQL-dynamic statements in external routines | |
| T655 | Cyclically dependent routines | |
| T839 | Formatted cast of datetimes to/from character strings | Optional feature with SQL:2016 |