Define __EXTENSIONS__ on Solaris, too.
[pgsql.git] / src / backend / catalog / sql_features.txt
blobc002f37202f58f27b595e90d69ceba797ffaa46b
1 B011    Embedded Ada                    NO      
2 B012    Embedded C                      YES     
3 B013    Embedded COBOL                  NO      
4 B014    Embedded Fortran                        NO      
5 B015    Embedded MUMPS                  NO      
6 B016    Embedded Pascal                 NO      
7 B017    Embedded PL/I                   NO      
8 B021    Direct SQL                      YES     
9 B030    Enhanced dynamic SQL                    NO      
10 B031    Basic dynamic SQL                       NO      
11 B032    Extended dynamic SQL                    NO      
12 B033    Untyped SQL-invoked function arguments                  NO      
13 B034    Dynamic specification of cursor attributes                      NO      
14 B035    Non-extended descriptor names                   NO      
15 B036    Describe input statement                        NO      
16 B041    Extensions to embedded SQL exception declarations                       NO      
17 B051    Enhanced execution rights                       NO      
18 B111    Module language Ada                     NO      
19 B112    Module language C                       NO      
20 B113    Module language COBOL                   NO      
21 B114    Module language Fortran                 NO      
22 B115    Module language MUMPS                   NO      
23 B116    Module language Pascal                  NO      
24 B117    Module language PL/I                    NO      
25 B121    Routine language Ada                    NO      
26 B122    Routine language C                      NO      
27 B123    Routine language COBOL                  NO      
28 B124    Routine language Fortran                        NO      
29 B125    Routine language MUMPS                  NO      
30 B126    Routine language Pascal                 NO      
31 B127    Routine language PL/I                   NO      
32 B128    Routine language SQL                    YES     
33 B200    Polymorphic table functions                     NO      
34 B201    More than one PTF generic table parameter                       NO      
35 B202    PTF copartitioning                      NO      
36 B203    More than one copartition specification                 NO      
37 B204    PRUNE WHEN EMPTY                        NO      
38 B205    Pass-through columns                    NO      
39 B206    PTF descriptor parameters                       NO      
40 B207    Cross products of partitionings                 NO      
41 B208    PTF component procedure interface                       NO      
42 B209    PTF extended names                      NO      
43 B211    Module language Ada: VARCHAR and NUMERIC support                        NO      
44 B221    Routine language Ada: VARCHAR and NUMERIC support                       NO      
45 E011    Numeric data types                      YES     
46 E011    Numeric data types      01      INTEGER and SMALLINT data types YES     
47 E011    Numeric data types      02      REAL, DOUBLE PRECISION, and FLOAT data types    YES     
48 E011    Numeric data types      03      DECIMAL and NUMERIC data types  YES     
49 E011    Numeric data types      04      Arithmetic operators    YES     
50 E011    Numeric data types      05      Numeric comparison      YES     
51 E011    Numeric data types      06      Implicit casting among the numeric data types   YES     
52 E021    Character data types                    YES     
53 E021    Character string types  01      CHARACTER data type     YES     
54 E021    Character string types  02      CHARACTER VARYING data type     YES     
55 E021    Character string types  03      Character literals      YES     
56 E021    Character string types  04      CHARACTER_LENGTH function       YES     trims trailing spaces from CHARACTER values before counting
57 E021    Character string types  05      OCTET_LENGTH function   YES     
58 E021    Character string types  06      SUBSTRING function      YES     
59 E021    Character string types  07      Character concatenation YES     
60 E021    Character string types  08      UPPER and LOWER functions       YES     
61 E021    Character string types  09      TRIM function   YES     
62 E021    Character string types  10      Implicit casting among the character string types       YES     
63 E021    Character string types  11      POSITION function       YES     
64 E021    Character string types  12      Character comparison    YES     
65 E031    Identifiers                     YES     
66 E031    Identifiers     01      Delimited identifiers   YES     
67 E031    Identifiers     02      Lower case identifiers  YES     
68 E031    Identifiers     03      Trailing underscore     YES     
69 E051    Basic query specification                       YES     
70 E051    Basic query specification       01      SELECT DISTINCT YES     
71 E051    Basic query specification       02      GROUP BY clause YES     
72 E051    Basic query specification       04      GROUP BY can contain columns not in <select list>       YES     
73 E051    Basic query specification       05      Select list items can be renamed        YES     
74 E051    Basic query specification       06      HAVING clause   YES     
75 E051    Basic query specification       07      Qualified * in select list      YES     
76 E051    Basic query specification       08      Correlation names in the FROM clause    YES     
77 E051    Basic query specification       09      Rename columns in the FROM clause       YES     
78 E061    Basic predicates and search conditions                  YES     
79 E061    Basic predicates and search conditions  01      Comparison predicate    YES     
80 E061    Basic predicates and search conditions  02      BETWEEN predicate       YES     
81 E061    Basic predicates and search conditions  03      IN predicate with list of values        YES     
82 E061    Basic predicates and search conditions  04      LIKE predicate  YES     
83 E061    Basic predicates and search conditions  05      LIKE predicate ESCAPE clause    YES     
84 E061    Basic predicates and search conditions  06      NULL predicate  YES     
85 E061    Basic predicates and search conditions  07      Quantified comparison predicate YES     
86 E061    Basic predicates and search conditions  08      EXISTS predicate        YES     
87 E061    Basic predicates and search conditions  09      Subqueries in comparison predicate      YES     
88 E061    Basic predicates and search conditions  11      Subqueries in IN predicate      YES     
89 E061    Basic predicates and search conditions  12      Subqueries in quantified comparison predicate   YES     
90 E061    Basic predicates and search conditions  13      Correlated subqueries   YES     
91 E061    Basic predicates and search conditions  14      Search condition        YES     
92 E071    Basic query expressions                 YES     
93 E071    Basic query expressions 01      UNION DISTINCT table operator   YES     
94 E071    Basic query expressions 02      UNION ALL table operator        YES     
95 E071    Basic query expressions 03      EXCEPT DISTINCT table operator  YES     
96 E071    Basic query expressions 05      Columns combined via table operators need not have exactly the same data type   YES     
97 E071    Basic query expressions 06      Table operators in subqueries   YES     
98 E081    Basic Privileges                        YES     
99 E081    Basic Privileges        01      SELECT privilege        YES     
100 E081    Basic Privileges        02      DELETE privilege        YES     
101 E081    Basic Privileges        03      INSERT privilege at the table level     YES     
102 E081    Basic Privileges        04      UPDATE privilege at the table level     YES     
103 E081    Basic Privileges        05      UPDATE privilege at the column level    YES     
104 E081    Basic Privileges        06      REFERENCES privilege at the table level YES     
105 E081    Basic Privileges        07      REFERENCES privilege at the column level        YES     
106 E081    Basic Privileges        08      WITH GRANT OPTION       YES     
107 E081    Basic Privileges        09      USAGE privilege YES     
108 E081    Basic Privileges        10      EXECUTE privilege       YES     
109 E091    Set functions                   YES     
110 E091    Set functions   01      AVG     YES     
111 E091    Set functions   02      COUNT   YES     
112 E091    Set functions   03      MAX     YES     
113 E091    Set functions   04      MIN     YES     
114 E091    Set functions   05      SUM     YES     
115 E091    Set functions   06      ALL quantifier  YES     
116 E091    Set functions   07      DISTINCT quantifier     YES     
117 E101    Basic data manipulation                 YES     
118 E101    Basic data manipulation 01      INSERT statement        YES     
119 E101    Basic data manipulation 03      Searched UPDATE statement       YES     
120 E101    Basic data manipulation 04      Searched DELETE statement       YES     
121 E111    Single row SELECT statement                     YES     
122 E121    Basic cursor support                    YES     
123 E121    Basic cursor support    01      DECLARE CURSOR  YES     
124 E121    Basic cursor support    02      ORDER BY columns need not be in select list     YES     
125 E121    Basic cursor support    03      Value expressions in ORDER BY clause    YES     
126 E121    Basic cursor support    04      OPEN statement  YES     
127 E121    Basic cursor support    06      Positioned UPDATE statement     YES     
128 E121    Basic cursor support    07      Positioned DELETE statement     YES     
129 E121    Basic cursor support    08      CLOSE statement YES     
130 E121    Basic cursor support    10      FETCH statement implicit NEXT   YES     
131 E121    Basic cursor support    17      WITH HOLD cursors       YES     
132 E131    Null value support (nulls in lieu of values)                    YES     
133 E141    Basic integrity constraints                     YES     
134 E141    Basic integrity constraints     01      NOT NULL constraints    YES     
135 E141    Basic integrity constraints     02      UNIQUE constraints of NOT NULL columns  YES     
136 E141    Basic integrity constraints     03      PRIMARY KEY constraints YES     
137 E141    Basic integrity constraints     04      Basic FOREIGN KEY constraint with the NO ACTION default for both referential delete action and referential update action        YES     
138 E141    Basic integrity constraints     06      CHECK constraints       YES     
139 E141    Basic integrity constraints     07      Column defaults YES     
140 E141    Basic integrity constraints     08      NOT NULL inferred on PRIMARY KEY        YES     
141 E141    Basic integrity constraints     10      Names in a foreign key can be specified in any order    YES     
142 E151    Transaction support                     YES     
143 E151    Transaction support     01      COMMIT statement        YES     
144 E151    Transaction support     02      ROLLBACK statement      YES     
145 E152    Basic SET TRANSACTION statement                 YES     
146 E152    Basic SET TRANSACTION statement 01      SET TRANSACTION statement: ISOLATION LEVEL SERIALIZABLE clause  YES     
147 E152    Basic SET TRANSACTION statement 02      SET TRANSACTION statement: READ ONLY and READ WRITE clauses     YES     
148 E153    Updatable queries with subqueries                       YES     
149 E161    SQL comments using leading double minus                 YES     
150 E171    SQLSTATE support                        YES     
151 E182    Host language binding                   YES     
152 F021    Basic information schema                        YES     
153 F021    Basic information schema        01      COLUMNS view    YES     
154 F021    Basic information schema        02      TABLES view     YES     
155 F021    Basic information schema        03      VIEWS view      YES     
156 F021    Basic information schema        04      TABLE_CONSTRAINTS view  YES     
157 F021    Basic information schema        05      REFERENTIAL_CONSTRAINTS view    YES     
158 F021    Basic information schema        06      CHECK_CONSTRAINTS view  YES     
159 F031    Basic schema manipulation                       YES     
160 F031    Basic schema manipulation       01      CREATE TABLE statement to create persistent base tables YES     
161 F031    Basic schema manipulation       02      CREATE VIEW statement   YES     
162 F031    Basic schema manipulation       03      GRANT statement YES     
163 F031    Basic schema manipulation       04      ALTER TABLE statement: ADD COLUMN clause        YES     
164 F031    Basic schema manipulation       13      DROP TABLE statement: RESTRICT clause   YES     
165 F031    Basic schema manipulation       16      DROP VIEW statement: RESTRICT clause    YES     
166 F031    Basic schema manipulation       19      REVOKE statement: RESTRICT clause       YES     
167 F032    CASCADE drop behavior                   YES     
168 F033    ALTER TABLE statement: DROP COLUMN clause                       YES     
169 F034    Extended REVOKE statement                       YES     
170 F035    REVOKE with CASCADE                     YES     
171 F036    REVOKE statement performed by non-owner                 YES     
172 F037    REVOKE statement: GRANT OPTION FOR clause                       YES     
173 F038    REVOKE of a WITH GRANT OPTION privilege                 YES     
174 F041    Basic joined table                      YES     
175 F041    Basic joined table      01      Inner join (but not necessarily the INNER keyword)      YES     
176 F041    Basic joined table      02      INNER keyword   YES     
177 F041    Basic joined table      03      LEFT OUTER JOIN YES     
178 F041    Basic joined table      04      RIGHT OUTER JOIN        YES     
179 F041    Basic joined table      05      Outer joins can be nested       YES     
180 F041    Basic joined table      07      The inner table in a left or right outer join can also be used in an inner join YES     
181 F041    Basic joined table      08      All comparison operators are supported (rather than just =)     YES     
182 F051    Basic date and time                     YES     
183 F051    Basic date and time     01      DATE data type (including support of DATE literal)      YES     
184 F051    Basic date and time     02      TIME data type (including support of TIME literal) with fractional seconds precision of at least 0      YES     
185 F051    Basic date and time     03      TIMESTAMP data type (including support of TIMESTAMP literal) with fractional seconds precision of at least 0 and 6      YES     
186 F051    Basic date and time     04      Comparison predicate on DATE, TIME, and TIMESTAMP data types    YES     
187 F051    Basic date and time     05      Explicit CAST between datetime types and character string types YES     
188 F051    Basic date and time     06      CURRENT_DATE    YES     
189 F051    Basic date and time     07      LOCALTIME       YES     
190 F051    Basic date and time     08      LOCALTIMESTAMP  YES     
191 F052    Intervals and datetime arithmetic                       YES     
192 F053    OVERLAPS predicate                      YES     
193 F054    TIMESTAMP in DATE type precedence list                  NO      
194 F081    UNION and EXCEPT in views                       YES     
195 F111    Isolation levels other than SERIALIZABLE                        YES     
196 F112    Isolation level READ UNCOMMITTED                        YES     
197 F113    Isolation level READ COMMITTED                  YES     
198 F114    Isolation level REPEATABLE READ                 YES     
199 F120    Get diagnostics statement                       NO      
200 F121    Basic diagnostics management                    NO      
201 F122    Enhanced diagnostics management                 NO      
202 F123    All diagnostics                 NO      
203 F124    SET TRANSACTION statement: DIAGNOSTICS SIZE clause                      NO      
204 F131    Grouped operations                      YES     
205 F131    Grouped operations      01      WHERE, GROUP BY, and HAVING clauses supported in queries with grouped views     YES     
206 F131    Grouped operations      02      Multiple tables supported in queries with grouped views YES     
207 F131    Grouped operations      03      Set functions supported in queries with grouped views   YES     
208 F131    Grouped operations      04      Subqueries with GROUP BY and HAVING clauses and grouped views   YES     
209 F131    Grouped operations      05      Single row SELECT with GROUP BY and HAVING clauses and grouped views    YES     
210 F171    Multiple schemas per user                       YES     
211 F181    Multiple module support                 YES     
212 F191    Referential delete actions                      YES     
213 F200    TRUNCATE TABLE statement                        YES     
214 F201    CAST function                   YES     
215 F202    TRUNCATE TABLE: identity column restart option                  YES     
216 F221    Explicit defaults                       YES     
217 F222    INSERT statement: DEFAULT VALUES clause                 YES     
218 F231    Privilege tables                        YES     
219 F251    Domain support                  YES     
220 F261    CASE expression                 YES     
221 F261    CASE expression 01      Simple CASE     YES     
222 F261    CASE expression 02      Searched CASE   YES     
223 F261    CASE expression 03      NULLIF  YES     
224 F261    CASE expression 04      COALESCE        YES     
225 F262    Extended CASE expression                        YES     
226 F263    Comma-separated predicates in simple CASE expression                    NO      
227 F271    Compound character literals                     YES     
228 F281    LIKE enhancements                       YES     
229 F291    UNIQUE predicate                        NO      
230 F292    UNIQUE null treatment                   YES     
231 F301    CORRESPONDING in query expressions                      NO      
232 F302    INTERSECT table operator                        YES     
233 F303    INTERSECT DISTINCT table operator                       YES     
234 F304    EXCEPT ALL table operator                       YES     
235 F305    INTERSECT ALL table operator                    YES     
236 F311    Schema definition statement                     YES     
237 F311    Schema definition statement     01      CREATE SCHEMA   YES     
238 F311    Schema definition statement     02      CREATE TABLE for persistent base tables YES     
239 F311    Schema definition statement     03      CREATE VIEW     YES     
240 F311    Schema definition statement     04      CREATE VIEW: WITH CHECK OPTION  YES     
241 F311    Schema definition statement     05      GRANT statement YES     
242 F312    MERGE statement                 YES     
243 F313    Enhanced MERGE statement                        YES     
244 F314    MERGE statement with DELETE branch                      YES     
245 F321    User authorization                      YES     
246 F341    Usage tables                    YES     
247 F361    Subprogram support                      YES     
248 F381    Extended schema manipulation                    YES     
249 F382    Alter column data type                  YES     
250 F383    Set column not null clause                      YES     
251 F384    Drop identity property clause                   YES     
252 F385    Drop column generation expression clause                        YES     
253 F386    Set identity column generation clause                   YES     
254 F387    ALTER TABLE statement: ALTER COLUMN clause                      YES     
255 F388    ALTER TABLE statement: ADD/DROP CONSTRAINT clause                       YES     
256 F391    Long identifiers                        YES     
257 F392    Unicode escapes in identifiers                  YES     
258 F393    Unicode escapes in literals                     YES     
259 F394    Optional normal form specification                      YES     
260 F401    Extended joined table                   YES     
261 F402    Named column joins for LOBs, arrays, and multisets                      YES     
262 F403    Partitioned join tables                 NO      
263 F404    Range variable for common column names                  YES     
264 F405    NATURAL JOIN                    YES     
265 F406    FULL OUTER JOIN                 YES     
266 F407    CROSS JOIN                      YES     
267 F411    Time zone specification                 YES     differences regarding literal interpretation
268 F421    National character                      YES     
269 F431    Read-only scrollable cursors                    YES     
270 F432    FETCH with explicit NEXT                        YES     
271 F433    FETCH FIRST                     YES     
272 F434    FETCH LAST                      YES     
273 F435    FETCH PRIOR                     YES     
274 F436    FETCH ABSOLUTE                  YES     
275 F437    FETCH RELATIVE                  YES     
276 F438    Scrollable cursors                      YES     
277 F441    Extended set function support                   YES     
278 F442    Mixed column references in set functions                        YES     
279 F451    Character set definition                        NO      
280 F461    Named character sets                    NO      
281 F471    Scalar subquery values                  YES     
282 F481    Expanded NULL predicate                 YES     
283 F491    Constraint management                   YES     
284 F492    Optional table constraint enforcement                   NO      
285 F501    Features and conformance views                  YES     
286 F501    Features and conformance views  01      SQL_FEATURES view       YES     
287 F501    Features and conformance views  02      SQL_SIZING view YES     
288 F502    Enhanced documentation tables                   YES     
289 F521    Assertions                      NO      
290 F531    Temporary tables                        YES     
291 F555    Enhanced seconds precision                      YES     
292 F561    Full value expressions                  YES     
293 F571    Truth value tests                       YES     
294 F591    Derived tables                  YES     
295 F611    Indicator data types                    YES     
296 F641    Row and table constructors                      YES     
297 F651    Catalog name qualifiers                 YES     
298 F661    Simple tables                   YES     
299 F671    Subqueries in CHECK constraints                 NO      intentionally omitted
300 F672    Retrospective CHECK constraints                 YES     
301 F673    Reads SQL-data routine invocations in CHECK constraints                 NO      
302 F690    Collation support                       YES     
303 F692    Extended collation support                      YES     
304 F693    SQL-session and client module collations                        NO      
305 F695    Translation support                     NO      
306 F696    Additional translation documentation                    NO      
307 F701    Referential update actions                      YES     
308 F711    ALTER domain                    YES     
309 F721    Deferrable constraints                  NO      foreign and unique keys only
310 F731    INSERT column privileges                        YES     
311 F741    Referential MATCH types                 NO      no partial match yet
312 F751    View CHECK enhancements                 YES     
313 F761    Session management                      YES     
314 F762    CURRENT_CATALOG                 YES     
315 F763    CURRENT_SCHEMA                  YES     
316 F771    Connection management                   YES     
317 F781    Self-referencing operations                     YES     
318 F791    Insensitive cursors                     YES     
319 F801    Full set function                       YES     
320 F812    Basic flagging                  NO      
321 F813    Extended flagging                       NO      
322 F821    Local table references                  NO      
323 F831    Full cursor update                      NO      
324 F832    Updatable scrollable cursors                    NO      
325 F833    Updatable ordered cursors                       NO      
326 F841    LIKE_REGEX predicate                    NO      consider regexp_like()
327 F842    OCCURRENCES_REGEX function                      NO      consider regexp_matches()
328 F843    POSITION_REGEX function                 NO      consider regexp_instr()
329 F844    SUBSTRING_REGEX function                        NO      consider regexp_substr()
330 F845    TRANSLATE_REGEX function                        NO      consider regexp_replace()
331 F846    Octet support in regular expression operators                   NO      
332 F847    Non-constant regular expressions                        NO      
333 F850    Top-level ORDER BY in query expression                  YES     
334 F851    ORDER BY in subqueries                  YES     
335 F852    Top-level ORDER BY in views                     YES     
336 F855    Nested ORDER BY in query expression                     YES     
337 F856    Nested FETCH FIRST in query expression                  YES     
338 F857    Top-level FETCH FIRST in query expression                       YES     
339 F858    FETCH FIRST in subqueries                       YES     
340 F859    Top-level FETCH FIRST in views                  YES     
341 F860    Dynamic FETCH FIRST row count                   YES     
342 F861    Top-level OFFSET in query expression                    YES     
343 F862    OFFSET in subqueries                    YES     
344 F863    Nested OFFSET in query expression                       YES     
345 F864    Top-level OFFSET in views                       YES     
346 F865    Dynamic offset row count in OFFSET                      YES     
347 F866    FETCH FIRST clause: PERCENT option                      NO      
348 F867    FETCH FIRST clause: WITH TIES option                    YES     
349 F868    ORDER BY in grouped table                       YES     
350 F869    SQL implementation info population                      YES     
351 R010    Row pattern recognition: FROM clause                    NO      
352 R020    Row pattern recognition: WINDOW clause                  NO      
353 R030    Row pattern recognition: full aggregate support                 NO      
354 S011    Distinct data types                     NO      
355 S011    Distinct data types     01      USER_DEFINED_TYPES view NO      
356 S023    Basic structured types                  NO      
357 S024    Enhanced structured types                       NO      
358 S025    Final structured types                  NO      
359 S026    Self-referencing structured types                       NO      
360 S027    Create method by specific method name                   NO      
361 S028    Permutable UDT options list                     NO      
362 S041    Basic reference types                   NO      
363 S043    Enhanced reference types                        NO      
364 S051    Create table of type                    NO      partially supported
365 S071    SQL paths in function and type name resolution                  YES     
366 S081    Subtables                       NO      
367 S090    Minimal array support                   YES     
368 S091    Basic array support                     NO      partially supported
369 S092    Arrays of user-defined types                    YES     
370 S093    Arrays of distinct types                        NO      
371 S094    Arrays of reference types                       NO      
372 S095    Array constructors by query                     YES     
373 S096    Optional array bounds                   YES     
374 S097    Array element assignment                        NO      
375 S098    ARRAY_AGG                       YES     
376 S099    Array expressions                       YES     
377 S111    ONLY in query expressions                       YES     
378 S151    Type predicate                  NO      see pg_typeof()
379 S161    Subtype treatment                       NO      
380 S162    Subtype treatment for references                        NO      
381 S201    SQL-invoked routines on arrays                  YES     
382 S202    SQL-invoked routines on multisets                       NO      
383 S203    Array parameters                        YES     
384 S204    Array as result type of functions                       YES     
385 S211    User-defined cast functions                     YES     
386 S231    Structured type locators                        NO      
387 S232    Array locators                  NO      
388 S233    Multiset locators                       NO      
389 S241    Transform functions                     NO      
390 S242    Alter transform statement                       NO      
391 S251    User-defined orderings                  NO      
392 S261    Specific type method                    NO      
393 S271    Basic multiset support                  NO      
394 S272    Multisets of user-defined types                 NO      
395 S274    Multisets of reference types                    NO      
396 S275    Advanced multiset support                       NO      
397 S281    Nested collection types                 NO      
398 S291    Unique constraint on entire row                 NO      
399 S301    Enhanced UNNEST                 YES     
400 S401    Distinct types based on array types                     NO      
401 S402    Distinct types based on multiset types                  NO      
402 S403    ARRAY_MAX_CARDINALITY                   NO      
403 S404    TRIM_ARRAY                      YES     
404 T011    Timestamp in Information Schema                 NO      
405 T021    BINARY and VARBINARY data types                 NO      
406 T022    Advanced support for BINARY and VARBINARY data types                    NO      
407 T023    Compound binary literals                        NO      
408 T024    Spaces in binary literals                       NO      
409 T031    BOOLEAN data type                       YES     
410 T039    CLOB locator: non-holdable                      NO      
411 T040    Concatenation of CLOBs                  NO      
412 T041    Basic LOB data type support                     NO      
413 T042    Extended LOB data type support                  NO      
414 T043    Multiplier T                    NO      
415 T044    Multiplier P                    NO      
416 T045    BLOB data type                  NO      
417 T046    CLOB data type                  NO      
418 T047    POSITION, OCTET_LENGTH, TRIM, and SUBSTRING for BLOBs                   NO      
419 T048    Concatenation of BLOBs                  NO      
420 T049    BLOB locator: non-holdable                      NO      
421 T050    POSITION, CHAR_LENGTH, OCTET_LENGTH, LOWER, TRIM, UPPER, and SUBSTRING for CLOBs                        NO      
422 T051    Row types                       NO      
423 T053    Explicit aliases for all-fields reference                       NO      
424 T054    GREATEST and LEAST                      YES     different null handling
425 T055    String padding functions                        YES     
426 T056    Multi-character TRIM functions                  YES     
427 T061    UCS support                     YES     
428 T062    Character length units                  NO      
429 T071    BIGINT data type                        YES     
430 T076    DECFLOAT data type                      NO      
431 T081    Optional string types maximum length                    YES     
432 T101    Enhanced nullability determination                      NO      
433 T111    Updatable joins, unions, and columns                    NO      
434 T121    WITH (excluding RECURSIVE) in query expression                  YES     
435 T122    WITH (excluding RECURSIVE) in subquery                  YES     
436 T131    Recursive query                 YES     
437 T132    Recursive query in subquery                     YES     
438 T133    Enhanced cycle mark values                      YES     
439 T141    SIMILAR predicate                       YES     
440 T151    DISTINCT predicate                      YES     
441 T152    DISTINCT predicate with negation                        YES     
442 T171    LIKE clause in table definition                 YES     
443 T172    AS subquery clause in table definition                  YES     
444 T173    Extended LIKE clause in table definition                        YES     
445 T174    Identity columns                        YES     
446 T175    Generated columns                       NO      mostly supported
447 T176    Sequence generator support                      NO      supported except for NEXT VALUE FOR
448 T177    Sequence generator support: simple restart option                       YES     
449 T178    Identity columns: simple restart option                 YES     
450 T180    System-versioned tables                 NO      
451 T181    Application-time period tables                  NO      
452 T191    Referential action RESTRICT                     YES     
453 T200    Trigger DDL                     NO      similar but not fully compatible
454 T201    Comparable data types for referential constraints                       YES     
455 T211    Basic trigger capability                        NO      
456 T212    Enhanced trigger capability                     YES     
457 T213    INSTEAD OF triggers                     YES     
458 T214    BEFORE triggers                 YES     
459 T215    AFTER triggers                  YES     
460 T216    Ability to require true search condition before trigger is invoked                      YES     
461 T217    TRIGGER privilege                       YES     
462 T218    Multiple triggers for the same event executed in the order created                      NO      intentionally omitted
463 T231    Sensitive cursors                       NO      
464 T241    START TRANSACTION statement                     YES     
465 T251    SET TRANSACTION statement: LOCAL option                 NO      
466 T261    Chained transactions                    YES     
467 T262    Multiple server transactions                    NO      
468 T271    Savepoints                      YES     
469 T272    Enhanced savepoint management                   NO      
470 T281    SELECT privilege with column granularity                        YES     
471 T285    Enhanced derived column names                   YES     
472 T301    Functional dependencies                 NO      partially supported
473 T312    OVERLAY function                        YES     
474 T321    Basic SQL-invoked routines                      NO      partially supported
475 T321    Basic SQL-invoked routines      01      User-defined functions with no overloading      YES     
476 T321    Basic SQL-invoked routines      02      User-defined stored procedures with no overloading      YES     
477 T321    Basic SQL-invoked routines      03      Function invocation     YES     
478 T321    Basic SQL-invoked routines      04      CALL statement  YES     
479 T321    Basic SQL-invoked routines      05      RETURN statement        YES     
480 T321    Basic SQL-invoked routines      06      ROUTINES view   YES     
481 T321    Basic SQL-invoked routines      07      PARAMETERS view YES     
482 T322    Declared data type attributes                   NO      
483 T323    Explicit security for external routines                 YES     
484 T324    Explicit security for SQL routines                      NO      
485 T325    Qualified SQL parameter references                      YES     
486 T326    Table functions                 NO      
487 T331    Basic roles                     YES     
488 T332    Extended roles                  YES     
489 T341    Overloading of SQL-invoked functions and SQL-invoked procedures                 YES     
490 T351    Bracketed comments                      YES     
491 T431    Extended grouping capabilities                  YES     
492 T432    Nested and concatenated GROUPING SETS                   YES     
493 T433    Multi-argument GROUPING function                        YES     
494 T434    GROUP BY DISTINCT                       YES     
495 T441    ABS and MOD functions                   YES     
496 T461    Symmetric BETWEEN predicate                     YES     
497 T471    Result sets return value                        NO      
498 T472    DESCRIBE CURSOR                 NO      
499 T491    LATERAL derived table                   YES     
500 T495    Combined data change and retrieval                      NO      different syntax
501 T501    Enhanced EXISTS predicate                       YES     
502 T502    Period predicates                       NO      
503 T511    Transaction counts                      NO      
504 T521    Named arguments in CALL statement                       YES     
505 T522    Default values for IN parameters of SQL-invoked procedures                      NO      supported except DEFAULT key word in invocation
506 T523    Default values for INOUT parameters of SQL-invoked procedures                   YES     
507 T524    Named arguments in routine invocations other than a CALL statement                      YES     
508 T525    Default values for parameters of SQL-invoked functions                  YES     
509 T551    Optional key words for default syntax                   YES     
510 T561    Holdable locators                       NO      
511 T571    Array-returning external SQL-invoked functions                  NO      
512 T572    Multiset-returning external SQL-invoked functions                       NO      
513 T581    Regular expression substring function                   YES     
514 T591    UNIQUE constraints of possibly null columns                     YES     
515 T601    Local cursor references                 NO      
516 T611    Elementary OLAP operations                      YES     
517 T612    Advanced OLAP operations                        YES     
518 T613    Sampling                        YES     
519 T614    NTILE function                  YES     
520 T615    LEAD and LAG functions                  YES     
521 T616    Null treatment option for LEAD and LAG functions                        NO      
522 T617    FIRST_VALUE and LAST_VALUE functions                    YES     
523 T618    NTH_VALUE function                      NO      function exists, but some options missing
524 T619    Nested window functions                 NO      
525 T620    WINDOW clause: GROUPS option                    YES     
526 T621    Enhanced numeric functions                      YES     
527 T622    Trigonometric functions                 YES     
528 T623    General logarithm functions                     YES     
529 T624    Common logarithm functions                      YES     
530 T625    LISTAGG                 NO      
531 T626    ANY_VALUE                       YES     
532 T627    Window framed COUNT DISTINCT                    YES     
533 T631    IN predicate with one list element                      YES     
534 T641    Multiple column assignment                      NO      only some syntax variants supported
535 T651    SQL-schema statements in SQL routines                   YES     
536 T652    SQL-dynamic statements in SQL routines                  NO      
537 T653    SQL-schema statements in external routines                      YES     
538 T654    SQL-dynamic statements in external routines                     NO      
539 T655    Cyclically dependent routines                   YES     
540 T661    Non-decimal integer literals                    YES     
541 T662    Underscores in numeric literals                 YES     
542 T670    Schema and data statement mixing                        YES     
543 T801    JSON data type                  NO      
544 T802    Enhanced JSON data type                 NO      
545 T803    String-based JSON                       YES     
546 T811    Basic SQL/JSON constructor functions                    YES     
547 T812    SQL/JSON: JSON_OBJECTAGG                        YES     
548 T813    SQL/JSON: JSON_ARRAYAGG with ORDER BY                   YES     
549 T814    Colon in JSON_OBJECT or JSON_OBJECTAGG                  YES     
550 T821    Basic SQL/JSON query operators                  YES     
551 T822    SQL/JSON: IS JSON WITH UNIQUE KEYS predicate                    YES     
552 T823    SQL/JSON: PASSING clause                        YES     
553 T824    JSON_TABLE: specific PLAN clause                        NO      
554 T825    SQL/JSON: ON EMPTY and ON ERROR clauses                 YES     
555 T826    General value expression in ON ERROR or ON EMPTY clauses                        YES     
556 T827    JSON_TABLE: sibling NESTED COLUMNS clauses                      YES     
557 T828    JSON_QUERY                      YES     
558 T829    JSON_QUERY: array wrapper options                       YES     
559 T830    Enforcing unique keys in SQL/JSON constructor functions                 YES     
560 T831    SQL/JSON path language: strict mode                     YES     
561 T832    SQL/JSON path language: item method                     YES     
562 T833    SQL/JSON path language: multiple subscripts                     YES     
563 T834    SQL/JSON path language: wildcard member accessor                        YES     
564 T835    SQL/JSON path language: filter expressions                      YES     
565 T836    SQL/JSON path language: starts with predicate                   YES     
566 T837    SQL/JSON path language: regex_like predicate                    YES     
567 T838    JSON_TABLE: PLAN DEFAULT clause                 NO      
568 T839    Formatted cast of datetimes to/from character strings                   NO      
569 T840    Hex integer literals in SQL/JSON path language                  YES     
570 T851    SQL/JSON: optional keywords for default syntax                  YES     
571 T860    SQL/JSON simplified accessor: column reference only                     NO      
572 T861    SQL/JSON simplified accessor: case-sensitive JSON member accessor                       NO      
573 T862    SQL/JSON simplified accessor: wildcard member accessor                  NO      
574 T863    SQL/JSON simplified accessor: single-quoted string literal as member accessor                   NO      
575 T864    SQL/JSON simplified accessor                    NO      
576 T865    SQL/JSON item method: bigint()                  YES     
577 T866    SQL/JSON item method: boolean()                 YES     
578 T867    SQL/JSON item method: date()                    YES     
579 T868    SQL/JSON item method: decimal()                 YES     
580 T869    SQL/JSON item method: decimal() with precision and scale                        YES     
581 T870    SQL/JSON item method: integer()                 YES     
582 T871    SQL/JSON item method: number()                  YES     
583 T872    SQL/JSON item method: string()                  YES     
584 T873    SQL/JSON item method: time()                    YES     
585 T874    SQL/JSON item method: time_tz()                 YES     
586 T875    SQL/JSON item method: time precision                    YES     
587 T876    SQL/JSON item method: timestamp()                       YES     
588 T877    SQL/JSON item method: timestamp_tz()                    YES     
589 T878    SQL/JSON item method: timestamp precision                       YES     
590 T879    JSON in equality operations                     YES     with jsonb
591 T880    JSON in grouping operations                     YES     with jsonb
592 T881    JSON in ordering operations                     NO      with jsonb, partially supported
593 T882    JSON in multiset element grouping operations                    NO      
594 M001    Datalinks                       NO      
595 M002    Datalinks via SQL/CLI                   NO      
596 M003    Datalinks via Embedded SQL                      NO      
597 M004    Foreign data support                    NO      partially supported
598 M005    Foreign schema support                  NO      
599 M006    GetSQLString routine                    NO      
600 M007    TransmitRequest                 NO      
601 M009    GetOpts and GetStatistics routines                      NO      
602 M010    Foreign-data wrapper support                    NO      different API
603 M011    Datalinks via Ada                       NO      
604 M012    Datalinks via C                 NO      
605 M013    Datalinks via COBOL                     NO      
606 M014    Datalinks via Fortran                   NO      
607 M015    Datalinks via M                 NO      
608 M016    Datalinks via Pascal                    NO      
609 M017    Datalinks via PL/I                      NO      
610 M018    Foreign-data wrapper interface routines in Ada                  NO      
611 M019    Foreign-data wrapper interface routines in C                    NO      different API
612 M020    Foreign-data wrapper interface routines in COBOL                        NO      
613 M021    Foreign-data wrapper interface routines in Fortran                      NO      
614 M022    Foreign-data wrapper interface routines in MUMPS                        NO      
615 M023    Foreign-data wrapper interface routines in Pascal                       NO      
616 M024    Foreign-data wrapper interface routines in PL/I                 NO      
617 M030    SQL-server foreign data support                 NO      
618 M031    Foreign-data wrapper general routines                   NO      
619 X010    XML type                        YES     
620 X011    Arrays of XML type                      YES     
621 X012    Multisets of XML type                   NO      
622 X013    Distinct types of XML type                      NO      
623 X014    Attributes of XML type                  YES     
624 X015    Fields of XML type                      NO      
625 X016    Persistent XML values                   YES     
626 X020    XMLConcat                       YES     
627 X025    XMLCast                 NO      
628 X030    XMLDocument                     NO      
629 X031    XMLElement                      YES     
630 X032    XMLForest                       YES     
631 X034    XMLAgg                  YES     
632 X035    XMLAgg: ORDER BY option                 YES     
633 X036    XMLComment                      YES     
634 X037    XMLPI                   YES     
635 X038    XMLText                 YES     supported except for RETURNING
636 X040    Basic table mapping                     YES     
637 X041    Basic table mapping: null absent                        YES     
638 X042    Basic table mapping: null as nil                        YES     
639 X043    Basic table mapping: table as forest                    YES     
640 X044    Basic table mapping: table as element                   YES     
641 X045    Basic table mapping: with target namespace                      YES     
642 X046    Basic table mapping: data mapping                       YES     
643 X047    Basic table mapping: metadata mapping                   YES     
644 X048    Basic table mapping: base64 encoding of binary strings                  YES     
645 X049    Basic table mapping: hex encoding of binary strings                     YES     
646 X050    Advanced table mapping                  YES     
647 X051    Advanced table mapping: null absent                     YES     
648 X052    Advanced table mapping: null as nil                     YES     
649 X053    Advanced table mapping: table as forest                 YES     
650 X054    Advanced table mapping: table as element                        YES     
651 X055    Advanced table mapping: with target namespace                   YES     
652 X056    Advanced table mapping: data mapping                    YES     
653 X057    Advanced table mapping: metadata mapping                        YES     
654 X058    Advanced table mapping: base64 encoding of binary strings                       YES     
655 X059    Advanced table mapping: hex encoding of binary strings                  YES     
656 X060    XMLParse: character string input and CONTENT option                     YES     
657 X061    XMLParse: character string input and DOCUMENT option                    YES     
658 X065    XMLParse: binary string input and CONTENT option                        NO      
659 X066    XMLParse: binary string input and DOCUMENT option                       NO      
660 X068    XMLSerialize: BOM                       NO      
661 X069    XMLSerialize: INDENT                    YES     
662 X070    XMLSerialize: character string serialization and CONTENT option                 YES     
663 X071    XMLSerialize: character string serialization and DOCUMENT option                        YES     
664 X072    XMLSerialize: character string serialization                    YES     
665 X073    XMLSerialize: binary string serialization and CONTENT option                    NO      
666 X074    XMLSerialize: binary string serialization and DOCUMENT option                   NO      
667 X075    XMLSerialize: binary string serialization                       NO      
668 X076    XMLSerialize: VERSION                   NO      
669 X077    XMLSerialize: explicit ENCODING option                  NO      
670 X078    XMLSerialize: explicit XML declaration                  NO      
671 X080    Namespaces in XML publishing                    NO      
672 X081    Query-level XML namespace declarations                  NO      
673 X082    XML namespace declarations in DML                       NO      
674 X083    XML namespace declarations in DDL                       NO      
675 X084    XML namespace declarations in compound statements                       NO      
676 X085    Predefined namespace prefixes                   NO      
677 X086    XML namespace declarations in XMLTable                  NO      
678 X090    XML document predicate                  YES     
679 X091    XML content predicate                   NO      
680 X096    XMLExists                       NO      XPath 1.0 only
681 X100    Host language support for XML: CONTENT option                   NO      
682 X101    Host language support for XML: DOCUMENT option                  NO      
683 X110    Host language support for XML: VARCHAR mapping                  NO      
684 X111    Host language support for XML: CLOB mapping                     NO      
685 X112    Host language support for XML: BLOB mapping                     NO      
686 X113    Host language support for XML: STRIP WHITESPACE option                  NO      
687 X114    Host language support for XML: PRESERVE WHITESPACE option                       NO      
688 X120    XML parameters in SQL routines                  YES     
689 X121    XML parameters in external routines                     YES     
690 X131    Query-level XMLBINARY clause                    NO      
691 X132    XMLBINARY clause in DML                 NO      
692 X133    XMLBINARY clause in DDL                 NO      
693 X134    XMLBINARY clause in compound statements                 NO      
694 X135    XMLBINARY clause in subqueries                  NO      
695 X141    IS VALID predicate: data-driven case                    NO      
696 X142    IS VALID predicate: ACCORDING TO clause                 NO      
697 X143    IS VALID predicate: ELEMENT clause                      NO      
698 X144    IS VALID predicate: schema location                     NO      
699 X145    IS VALID predicate outside check constraints                    NO      
700 X151    IS VALID predicate: with DOCUMENT option                        NO      
701 X152    IS VALID predicate: with CONTENT option                 NO      
702 X153    IS VALID predicate: with SEQUENCE option                        NO      
703 X155    IS VALID predicate: NAMESPACE without ELEMENT clause                    NO      
704 X157    IS VALID predicate: NO NAMESPACE with ELEMENT clause                    NO      
705 X160    Basic Information Schema for registered XML schemas                     NO      
706 X161    Advanced Information Schema for registered XML schemas                  NO      
707 X170    XML null handling options                       NO      
708 X171    NIL ON NO CONTENT option                        NO      
709 X181    XML(DOCUMENT(UNTYPED)) type                     NO      
710 X182    XML(DOCUMENT(ANY)) type                 NO      
711 X190    XML(SEQUENCE) type                      NO      
712 X191    XML(DOCUMENT(XMLSCHEMA)) type                   NO      
713 X192    XML(CONTENT(XMLSCHEMA)) type                    NO      
714 X200    XMLQuery                        NO      
715 X201    XMLQuery: RETURNING CONTENT                     NO      
716 X202    XMLQuery: RETURNING SEQUENCE                    NO      
717 X203    XMLQuery: passing a context item                        NO      
718 X204    XMLQuery: initializing an XQuery variable                       NO      
719 X205    XMLQuery: EMPTY ON EMPTY option                 NO      
720 X206    XMLQuery: NULL ON EMPTY option                  NO      
721 X211    XML 1.1 support                 NO      
722 X221    XML passing mechanism BY VALUE                  YES     
723 X222    XML passing mechanism BY REF                    NO      parser accepts BY REF but ignores it; passing is always BY VALUE
724 X231    XML(CONTENT(UNTYPED)) type                      NO      
725 X232    XML(CONTENT(ANY)) type                  NO      
726 X241    RETURNING CONTENT in XML publishing                     NO      
727 X242    RETURNING SEQUENCE in XML publishing                    NO      
728 X251    Persistent XML values of XML(DOCUMENT(UNTYPED)) type                    NO      
729 X252    Persistent XML values of XML(DOCUMENT(ANY)) type                        NO      
730 X253    Persistent XML values of XML(CONTENT(UNTYPED)) type                     NO      
731 X254    Persistent XML values of XML(CONTENT(ANY)) type                 NO      
732 X255    Persistent XML values of XML(SEQUENCE) type                     NO      
733 X256    Persistent XML values of XML(DOCUMENT(XMLSCHEMA)) type                  NO      
734 X257    Persistent XML values of XML(CONTENT(XMLSCHEMA)) type                   NO      
735 X260    XML type: ELEMENT clause                        NO      
736 X261    XML type: NAMESPACE without ELEMENT clause                      NO      
737 X263    XML type: NO NAMESPACE with ELEMENT clause                      NO      
738 X264    XML type: schema location                       NO      
739 X271    XMLValidate: data-driven case                   NO      
740 X272    XMLValidate: ACCORDING TO clause                        NO      
741 X273    XMLValidate: ELEMENT clause                     NO      
742 X274    XMLValidate: schema location                    NO      
743 X281    XMLValidate with DOCUMENT option                        NO      
744 X282    XMLValidate with CONTENT option                 NO      
745 X283    XMLValidate with SEQUENCE option                        NO      
746 X284    XMLValidate: NAMESPACE without ELEMENT clause                   NO      
747 X286    XMLValidate: NO NAMESPACE with ELEMENT clause                   NO      
748 X300    XMLTable                        NO      XPath 1.0 only
749 X301    XMLTable: derived column list option                    YES     
750 X302    XMLTable: ordinality column option                      YES     
751 X303    XMLTable: column default option                 YES     
752 X304    XMLTable: passing a context item                        YES     must be XML DOCUMENT
753 X305    XMLTable: initializing an XQuery variable                       NO      
754 X400    Name and identifier mapping                     YES     
755 X410    Alter column data type: XML type                        YES