2 D.1. Supported Features #
4 Identifier Core? Description Comment
7 B128 Routine language SQL
8 E011 Core Numeric data types
9 E011-01 Core INTEGER and SMALLINT data types
10 E011-02 Core REAL, DOUBLE PRECISION, and FLOAT data types
11 E011-03 Core DECIMAL and NUMERIC data types
12 E011-04 Core Arithmetic operators
13 E011-05 Core Numeric comparison
14 E011-06 Core Implicit casting among the numeric data types
15 E021 Core Character data types
16 E021-01 Core CHARACTER data type
17 E021-02 Core CHARACTER VARYING data type
18 E021-03 Core Character literals
19 E021-04 Core CHARACTER_LENGTH function trims trailing spaces from
20 CHARACTER values before counting
21 E021-05 Core OCTET_LENGTH function
22 E021-06 Core SUBSTRING function
23 E021-07 Core Character concatenation
24 E021-08 Core UPPER and LOWER functions
25 E021-09 Core TRIM function
26 E021-10 Core Implicit casting among the character string types
27 E021-11 Core POSITION function
28 E021-12 Core Character comparison
30 E031-01 Core Delimited identifiers
31 E031-02 Core Lower case identifiers
32 E031-03 Core Trailing underscore
33 E051 Core Basic query specification
34 E051-01 Core SELECT DISTINCT
35 E051-02 Core GROUP BY clause
36 E051-04 Core GROUP BY can contain columns not in <select list>
37 E051-05 Core Select list items can be renamed
38 E051-06 Core HAVING clause
39 E051-07 Core Qualified * in select list
40 E051-08 Core Correlation names in the FROM clause
41 E051-09 Core Rename columns in the FROM clause
42 E061 Core Basic predicates and search conditions
43 E061-01 Core Comparison predicate
44 E061-02 Core BETWEEN predicate
45 E061-03 Core IN predicate with list of values
46 E061-04 Core LIKE predicate
47 E061-05 Core LIKE predicate ESCAPE clause
48 E061-06 Core NULL predicate
49 E061-07 Core Quantified comparison predicate
50 E061-08 Core EXISTS predicate
51 E061-09 Core Subqueries in comparison predicate
52 E061-11 Core Subqueries in IN predicate
53 E061-12 Core Subqueries in quantified comparison predicate
54 E061-13 Core Correlated subqueries
55 E061-14 Core Search condition
56 E071 Core Basic query expressions
57 E071-01 Core UNION DISTINCT table operator
58 E071-02 Core UNION ALL table operator
59 E071-03 Core EXCEPT DISTINCT table operator
60 E071-05 Core Columns combined via table operators need not have exactly
62 E071-06 Core Table operators in subqueries
63 E081 Core Basic Privileges
64 E081-01 Core SELECT privilege
65 E081-02 Core DELETE privilege
66 E081-03 Core INSERT privilege at the table level
67 E081-04 Core UPDATE privilege at the table level
68 E081-05 Core UPDATE privilege at the column level
69 E081-06 Core REFERENCES privilege at the table level
70 E081-07 Core REFERENCES privilege at the column level
71 E081-08 Core WITH GRANT OPTION
72 E081-09 Core USAGE privilege
73 E081-10 Core EXECUTE privilege
74 E091 Core Set functions
80 E091-06 Core ALL quantifier
81 E091-07 Core DISTINCT quantifier
82 E101 Core Basic data manipulation
83 E101-01 Core INSERT statement
84 E101-03 Core Searched UPDATE statement
85 E101-04 Core Searched DELETE statement
86 E111 Core Single row SELECT statement
87 E121 Core Basic cursor support
88 E121-01 Core DECLARE CURSOR
89 E121-02 Core ORDER BY columns need not be in select list
90 E121-03 Core Value expressions in ORDER BY clause
91 E121-04 Core OPEN statement
92 E121-06 Core Positioned UPDATE statement
93 E121-07 Core Positioned DELETE statement
94 E121-08 Core CLOSE statement
95 E121-10 Core FETCH statement implicit NEXT
96 E121-17 Core WITH HOLD cursors
97 E131 Core Null value support (nulls in lieu of values)
98 E141 Core Basic integrity constraints
99 E141-01 Core NOT NULL constraints
100 E141-02 Core UNIQUE constraints of NOT NULL columns
101 E141-03 Core PRIMARY KEY constraints
102 E141-04 Core Basic FOREIGN KEY constraint with the NO ACTION default
103 for both referential delete action and referential update action
104 E141-06 Core CHECK constraints
105 E141-07 Core Column defaults
106 E141-08 Core NOT NULL inferred on PRIMARY KEY
107 E141-10 Core Names in a foreign key can be specified in any order
108 E151 Core Transaction support
109 E151-01 Core COMMIT statement
110 E151-02 Core ROLLBACK statement
111 E152 Core Basic SET TRANSACTION statement
112 E152-01 Core SET TRANSACTION statement: ISOLATION LEVEL SERIALIZABLE
114 E152-02 Core SET TRANSACTION statement: READ ONLY and READ WRITE
116 E153 Core Updatable queries with subqueries
117 E161 Core SQL comments using leading double minus
118 E171 Core SQLSTATE support
119 E182 Core Host language binding
120 F021 Core Basic information schema
121 F021-01 Core COLUMNS view
122 F021-02 Core TABLES view
123 F021-03 Core VIEWS view
124 F021-04 Core TABLE_CONSTRAINTS view
125 F021-05 Core REFERENTIAL_CONSTRAINTS view
126 F021-06 Core CHECK_CONSTRAINTS view
127 F031 Core Basic schema manipulation
128 F031-01 Core CREATE TABLE statement to create persistent base tables
129 F031-02 Core CREATE VIEW statement
130 F031-03 Core GRANT statement
131 F031-04 Core ALTER TABLE statement: ADD COLUMN clause
132 F031-13 Core DROP TABLE statement: RESTRICT clause
133 F031-16 Core DROP VIEW statement: RESTRICT clause
134 F031-19 Core REVOKE statement: RESTRICT clause
135 F032 CASCADE drop behavior
136 F033 ALTER TABLE statement: DROP COLUMN clause
137 F034 Extended REVOKE statement
138 F035 REVOKE with CASCADE
139 F036 REVOKE statement performed by non-owner
140 F037 REVOKE statement: GRANT OPTION FOR clause
141 F038 REVOKE of a WITH GRANT OPTION privilege
142 F041 Core Basic joined table
143 F041-01 Core Inner join (but not necessarily the INNER keyword)
144 F041-02 Core INNER keyword
145 F041-03 Core LEFT OUTER JOIN
146 F041-04 Core RIGHT OUTER JOIN
147 F041-05 Core Outer joins can be nested
148 F041-07 Core The inner table in a left or right outer join can also be
149 used in an inner join
150 F041-08 Core All comparison operators are supported (rather than just
152 F051 Core Basic date and time
153 F051-01 Core DATE data type (including support of DATE literal)
154 F051-02 Core TIME data type (including support of TIME literal) with
155 fractional seconds precision of at least 0
156 F051-03 Core TIMESTAMP data type (including support of TIMESTAMP
157 literal) with fractional seconds precision of at least 0 and 6
158 F051-04 Core Comparison predicate on DATE, TIME, and TIMESTAMP data
160 F051-05 Core Explicit CAST between datetime types and character string
162 F051-06 Core CURRENT_DATE
163 F051-07 Core LOCALTIME
164 F051-08 Core LOCALTIMESTAMP
165 F052 Intervals and datetime arithmetic
166 F053 OVERLAPS predicate
167 F081 Core UNION and EXCEPT in views
168 F111 Isolation levels other than SERIALIZABLE
169 F112 Isolation level READ UNCOMMITTED
170 F113 Isolation level READ COMMITTED
171 F114 Isolation level REPEATABLE READ
172 F131 Core Grouped operations
173 F131-01 Core WHERE, GROUP BY, and HAVING clauses supported in queries
175 F131-02 Core Multiple tables supported in queries with grouped views
176 F131-03 Core Set functions supported in queries with grouped views
177 F131-04 Core Subqueries with GROUP BY and HAVING clauses and grouped
179 F131-05 Core Single row SELECT with GROUP BY and HAVING clauses and
181 F171 Multiple schemas per user
182 F181 Core Multiple module support
183 F191 Referential delete actions
184 F200 TRUNCATE TABLE statement
185 F201 Core CAST function
186 F202 TRUNCATE TABLE: identity column restart option
187 F221 Core Explicit defaults
188 F222 INSERT statement: DEFAULT VALUES clause
189 F231 Privilege tables
191 F261 Core CASE expression
192 F261-01 Core Simple CASE
193 F261-02 Core Searched CASE
195 F261-04 Core COALESCE
196 F262 Extended CASE expression
197 F271 Compound character literals
198 F281 LIKE enhancements
199 F292 UNIQUE null treatment
200 F302 INTERSECT table operator
201 F303 INTERSECT DISTINCT table operator
202 F304 EXCEPT ALL table operator
203 F305 INTERSECT ALL table operator
204 F311 Core Schema definition statement
205 F311-01 Core CREATE SCHEMA
206 F311-02 Core CREATE TABLE for persistent base tables
207 F311-03 Core CREATE VIEW
208 F311-04 Core CREATE VIEW: WITH CHECK OPTION
209 F311-05 Core GRANT statement
211 F313 Enhanced MERGE statement
212 F314 MERGE statement with DELETE branch
213 F321 User authorization
215 F361 Subprogram support
216 F381 Extended schema manipulation
217 F382 Alter column data type
218 F383 Set column not null clause
219 F384 Drop identity property clause
220 F385 Drop column generation expression clause
221 F386 Set identity column generation clause
222 F387 ALTER TABLE statement: ALTER COLUMN clause
223 F388 ALTER TABLE statement: ADD/DROP CONSTRAINT clause
224 F391 Long identifiers
225 F392 Unicode escapes in identifiers
226 F393 Unicode escapes in literals
227 F394 Optional normal form specification
228 F401 Extended joined table
229 F402 Named column joins for LOBs, arrays, and multisets
230 F404 Range variable for common column names
234 F411 Time zone specification differences regarding literal
236 F421 National character
237 F431 Read-only scrollable cursors
238 F432 FETCH with explicit NEXT
244 F438 Scrollable cursors
245 F441 Extended set function support
246 F442 Mixed column references in set functions
247 F471 Core Scalar subquery values
248 F481 Core Expanded NULL predicate
249 F491 Constraint management
250 F492 Optional table constraint enforcement except not-null
252 F501 Core Features and conformance views
253 F501-01 Core SQL_FEATURES view
254 F501-02 Core SQL_SIZING view
255 F502 Enhanced documentation tables
256 F531 Temporary tables
257 F555 Enhanced seconds precision
258 F561 Full value expressions
259 F571 Truth value tests
261 F611 Indicator data types
262 F641 Row and table constructors
263 F651 Catalog name qualifiers
265 F672 Retrospective CHECK constraints
266 F690 Collation support
267 F692 Extended collation support
268 F701 Referential update actions
270 F731 INSERT column privileges
271 F751 View CHECK enhancements
272 F761 Session management
275 F771 Connection management
276 F781 Self-referencing operations
277 F791 Insensitive cursors
278 F801 Full set function
279 F850 Top-level ORDER BY in query expression
280 F851 ORDER BY in subqueries
281 F852 Top-level ORDER BY in views
282 F855 Nested ORDER BY in query expression
283 F856 Nested FETCH FIRST in query expression
284 F857 Top-level FETCH FIRST in query expression
285 F858 FETCH FIRST in subqueries
286 F859 Top-level FETCH FIRST in views
287 F860 Dynamic FETCH FIRST row count
288 F861 Top-level OFFSET in query expression
289 F862 OFFSET in subqueries
290 F863 Nested OFFSET in query expression
291 F864 Top-level OFFSET in views
292 F865 Dynamic offset row count in OFFSET
293 F867 FETCH FIRST clause: WITH TIES option
294 F868 ORDER BY in grouped table
295 F869 SQL implementation info population
296 S071 SQL paths in function and type name resolution
297 S090 Minimal array support
298 S092 Arrays of user-defined types
299 S095 Array constructors by query
300 S096 Optional array bounds
302 S099 Array expressions
303 S111 ONLY in query expressions
304 S201 SQL-invoked routines on arrays
305 S203 Array parameters
306 S204 Array as result type of functions
307 S211 User-defined cast functions
310 T031 BOOLEAN data type
311 T054 GREATEST and LEAST different null handling
312 T055 String padding functions
313 T056 Multi-character TRIM functions
315 T071 BIGINT data type
316 T081 Optional string types maximum length
317 T121 WITH (excluding RECURSIVE) in query expression
318 T122 WITH (excluding RECURSIVE) in subquery
320 T132 Recursive query in subquery
321 T133 Enhanced cycle mark values
322 T141 SIMILAR predicate
323 T151 DISTINCT predicate
324 T152 DISTINCT predicate with negation
325 T171 LIKE clause in table definition
326 T172 AS subquery clause in table definition
327 T173 Extended LIKE clause in table definition
328 T174 Identity columns
329 T177 Sequence generator support: simple restart option
330 T178 Identity columns: simple restart option
331 T191 Referential action RESTRICT
332 T201 Comparable data types for referential constraints
333 T212 Enhanced trigger capability
334 T213 INSTEAD OF triggers
337 T216 Ability to require true search condition before trigger is
339 T217 TRIGGER privilege
340 T241 START TRANSACTION statement
341 T261 Chained transactions
343 T281 SELECT privilege with column granularity
344 T285 Enhanced derived column names
345 T312 OVERLAY function
346 T321-01 Core User-defined functions with no overloading
347 T321-02 Core User-defined stored procedures with no overloading
348 T321-03 Core Function invocation
349 T321-04 Core CALL statement
350 T321-05 Core RETURN statement
351 T321-06 Core ROUTINES view
352 T321-07 Core PARAMETERS view
353 T323 Explicit security for external routines
354 T325 Qualified SQL parameter references
357 T341 Overloading of SQL-invoked functions and SQL-invoked procedures
359 T351 Bracketed comments
360 T431 Extended grouping capabilities
361 T432 Nested and concatenated GROUPING SETS
362 T433 Multi-argument GROUPING function
363 T434 GROUP BY DISTINCT
364 T441 ABS and MOD functions
365 T461 Symmetric BETWEEN predicate
366 T491 LATERAL derived table
367 T501 Enhanced EXISTS predicate
368 T521 Named arguments in CALL statement
369 T523 Default values for INOUT parameters of SQL-invoked procedures
370 T524 Named arguments in routine invocations other than a CALL
372 T525 Default values for parameters of SQL-invoked functions
373 T551 Optional key words for default syntax
374 T581 Regular expression substring function
375 T591 UNIQUE constraints of possibly null columns
376 T611 Elementary OLAP operations
377 T612 Advanced OLAP operations
380 T615 LEAD and LAG functions
381 T617 FIRST_VALUE and LAST_VALUE functions
382 T620 WINDOW clause: GROUPS option
383 T621 Enhanced numeric functions
384 T622 Trigonometric functions
385 T623 General logarithm functions
386 T624 Common logarithm functions
388 T627 Window framed COUNT DISTINCT
389 T631 Core IN predicate with one list element
390 T651 SQL-schema statements in SQL routines
391 T653 SQL-schema statements in external routines
392 T655 Cyclically dependent routines
393 T661 Non-decimal integer literals
394 T662 Underscores in numeric literals
395 T670 Schema and data statement mixing
396 T803 String-based JSON
397 T811 Basic SQL/JSON constructor functions
398 T812 SQL/JSON: JSON_OBJECTAGG
399 T813 SQL/JSON: JSON_ARRAYAGG with ORDER BY
400 T814 Colon in JSON_OBJECT or JSON_OBJECTAGG
401 T821 Basic SQL/JSON query operators
402 T822 SQL/JSON: IS JSON WITH UNIQUE KEYS predicate
403 T823 SQL/JSON: PASSING clause
404 T825 SQL/JSON: ON EMPTY and ON ERROR clauses
405 T826 General value expression in ON ERROR or ON EMPTY clauses
406 T827 JSON_TABLE: sibling NESTED COLUMNS clauses
408 T829 JSON_QUERY: array wrapper options
409 T830 Enforcing unique keys in SQL/JSON constructor functions
410 T831 SQL/JSON path language: strict mode
411 T832 SQL/JSON path language: item method
412 T833 SQL/JSON path language: multiple subscripts
413 T834 SQL/JSON path language: wildcard member accessor
414 T835 SQL/JSON path language: filter expressions
415 T836 SQL/JSON path language: starts with predicate
416 T837 SQL/JSON path language: regex_like predicate
417 T840 Hex integer literals in SQL/JSON path language
418 T851 SQL/JSON: optional keywords for default syntax
419 T865 SQL/JSON item method: bigint()
420 T866 SQL/JSON item method: boolean()
421 T867 SQL/JSON item method: date()
422 T868 SQL/JSON item method: decimal()
423 T869 SQL/JSON item method: decimal() with precision and scale
424 T870 SQL/JSON item method: integer()
425 T871 SQL/JSON item method: number()
426 T872 SQL/JSON item method: string()
427 T873 SQL/JSON item method: time()
428 T874 SQL/JSON item method: time_tz()
429 T875 SQL/JSON item method: time precision
430 T876 SQL/JSON item method: timestamp()
431 T877 SQL/JSON item method: timestamp_tz()
432 T878 SQL/JSON item method: timestamp precision
433 T879 JSON in equality operations with jsonb
434 T880 JSON in grouping operations with jsonb
436 X011 Arrays of XML type
437 X014 Attributes of XML type
438 X016 Persistent XML values
443 X035 XMLAgg: ORDER BY option
446 X038 XMLText supported except for RETURNING
447 X040 Basic table mapping
448 X041 Basic table mapping: null absent
449 X042 Basic table mapping: null as nil
450 X043 Basic table mapping: table as forest
451 X044 Basic table mapping: table as element
452 X045 Basic table mapping: with target namespace
453 X046 Basic table mapping: data mapping
454 X047 Basic table mapping: metadata mapping
455 X048 Basic table mapping: base64 encoding of binary strings
456 X049 Basic table mapping: hex encoding of binary strings
457 X050 Advanced table mapping
458 X051 Advanced table mapping: null absent
459 X052 Advanced table mapping: null as nil
460 X053 Advanced table mapping: table as forest
461 X054 Advanced table mapping: table as element
462 X055 Advanced table mapping: with target namespace
463 X056 Advanced table mapping: data mapping
464 X057 Advanced table mapping: metadata mapping
465 X058 Advanced table mapping: base64 encoding of binary strings
466 X059 Advanced table mapping: hex encoding of binary strings
467 X060 XMLParse: character string input and CONTENT option
468 X061 XMLParse: character string input and DOCUMENT option
469 X069 XMLSerialize: INDENT
470 X070 XMLSerialize: character string serialization and CONTENT option
472 X071 XMLSerialize: character string serialization and DOCUMENT option
474 X072 XMLSerialize: character string serialization
475 X090 XML document predicate
476 X120 XML parameters in SQL routines
477 X121 XML parameters in external routines
478 X221 XML passing mechanism BY VALUE
479 X301 XMLTable: derived column list option
480 X302 XMLTable: ordinality column option
481 X303 XMLTable: column default option
482 X304 XMLTable: passing a context item must be XML DOCUMENT
483 X400 Name and identifier mapping
484 X410 Alter column data type: XML type