]> begriffs open source - ai-pg/blob - full-docs/txt/features-sql-standard.txt
Convert HTML docs to more streamlined TXT
[ai-pg] / full-docs / txt / features-sql-standard.txt
1
2 D.1. Supported Features #
3
4    Identifier Core? Description Comment
5    B012   Embedded C
6    B021   Direct SQL
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
29    E031 Core Identifiers
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
61    the same data type
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
75    E091-01 Core AVG
76    E091-02 Core COUNT
77    E091-03 Core MAX
78    E091-04 Core MIN
79    E091-05 Core SUM
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
113    clause
114    E152-02 Core SET TRANSACTION statement: READ ONLY and READ WRITE
115    clauses
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
151    =)
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
159    types
160    F051-05 Core Explicit CAST between datetime types and character string
161    types
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
174    with grouped views
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
178    views
179    F131-05 Core Single row SELECT with GROUP BY and HAVING clauses and
180    grouped views
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
190    F251   Domain support
191    F261 Core CASE expression
192    F261-01 Core Simple CASE
193    F261-02 Core Searched CASE
194    F261-03 Core NULLIF
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
210    F312   MERGE statement
211    F313   Enhanced MERGE statement
212    F314   MERGE statement with DELETE branch
213    F321   User authorization
214    F341   Usage tables
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
231    F405   NATURAL JOIN
232    F406   FULL OUTER JOIN
233    F407   CROSS JOIN
234    F411   Time zone specification differences regarding literal
235    interpretation
236    F421   National character
237    F431   Read-only scrollable cursors
238    F432   FETCH with explicit NEXT
239    F433   FETCH FIRST
240    F434   FETCH LAST
241    F435   FETCH PRIOR
242    F436   FETCH ABSOLUTE
243    F437   FETCH RELATIVE
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
251    constraints
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
260    F591   Derived tables
261    F611   Indicator data types
262    F641   Row and table constructors
263    F651   Catalog name qualifiers
264    F661   Simple tables
265    F672   Retrospective CHECK constraints
266    F690   Collation support
267    F692   Extended collation support
268    F701   Referential update actions
269    F711   ALTER domain
270    F731   INSERT column privileges
271    F751   View CHECK enhancements
272    F761   Session management
273    F762   CURRENT_CATALOG
274    F763   CURRENT_SCHEMA
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
301    S098   ARRAY_AGG
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
308    S301   Enhanced UNNEST
309    S404   TRIM_ARRAY
310    T031   BOOLEAN data type
311    T054   GREATEST and LEAST different null handling
312    T055   String padding functions
313    T056   Multi-character TRIM functions
314    T061   UCS support
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
319    T131   Recursive query
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
335    T214   BEFORE triggers
336    T215   AFTER triggers
337    T216   Ability to require true search condition before trigger is
338    invoked
339    T217   TRIGGER privilege
340    T241   START TRANSACTION statement
341    T261   Chained transactions
342    T271   Savepoints
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
355    T331   Basic roles
356    T332   Extended roles
357    T341   Overloading of SQL-invoked functions and SQL-invoked procedures
358
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
371    statement
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
378    T613   Sampling
379    T614   NTILE function
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
387    T626   ANY_VALUE
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
407    T828   JSON_QUERY
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
435    X010   XML type
436    X011   Arrays of XML type
437    X014   Attributes of XML type
438    X016   Persistent XML values
439    X020   XMLConcat
440    X031   XMLElement
441    X032   XMLForest
442    X034   XMLAgg
443    X035   XMLAgg: ORDER BY option
444    X036   XMLComment
445    X037   XMLPI
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
471
472    X071   XMLSerialize: character string serialization and DOCUMENT option
473
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