2 D.2. Unsupported Features #
4 The following features defined in SQL:2023 are not implemented in this
5 release of PostgreSQL. In a few cases, equivalent functionality is
7 Identifier Core? Description Comment
14 B030 Enhanced dynamic SQL
15 B031 Basic dynamic SQL
16 B032 Extended dynamic SQL
17 B033 Untyped SQL-invoked function arguments
18 B034 Dynamic specification of cursor attributes
19 B035 Non-extended descriptor names
20 B036 Describe input statement
21 B041 Extensions to embedded SQL exception declarations
22 B051 Enhanced execution rights
23 B111 Module language Ada
24 B112 Module language C
25 B113 Module language COBOL
26 B114 Module language Fortran
27 B115 Module language MUMPS
28 B116 Module language Pascal
29 B117 Module language PL/I
30 B121 Routine language Ada
31 B122 Routine language C
32 B123 Routine language COBOL
33 B124 Routine language Fortran
34 B125 Routine language MUMPS
35 B126 Routine language Pascal
36 B127 Routine language PL/I
37 B200 Polymorphic table functions
38 B201 More than one PTF generic table parameter
39 B202 PTF copartitioning
40 B203 More than one copartition specification
42 B205 Pass-through columns
43 B206 PTF descriptor parameters
44 B207 Cross products of partitionings
45 B208 PTF component procedure interface
46 B209 PTF extended names
47 B211 Module language Ada: VARCHAR and NUMERIC support
48 B221 Routine language Ada: VARCHAR and NUMERIC support
49 F054 TIMESTAMP in DATE type precedence list
50 F120 Get diagnostics statement
51 F121 Basic diagnostics management
52 F122 Enhanced diagnostics management
54 F124 SET TRANSACTION statement: DIAGNOSTICS SIZE clause
55 F263 Comma-separated predicates in simple CASE expression
57 F301 CORRESPONDING in query expressions
58 F403 Partitioned join tables
59 F451 Character set definition
60 F461 Named character sets
62 F671 Subqueries in CHECK constraints intentionally omitted
63 F673 Reads SQL-data routine invocations in CHECK constraints
64 F693 SQL-session and client module collations
65 F695 Translation support
66 F696 Additional translation documentation
67 F721 Deferrable constraints foreign and unique keys only
68 F741 Referential MATCH types no partial match yet
70 F813 Extended flagging
71 F821 Local table references
72 F831 Full cursor update
73 F832 Updatable scrollable cursors
74 F833 Updatable ordered cursors
75 F841 LIKE_REGEX predicate consider regexp_like()
76 F842 OCCURRENCES_REGEX function consider regexp_matches()
77 F843 POSITION_REGEX function consider regexp_instr()
78 F844 SUBSTRING_REGEX function consider regexp_substr()
79 F845 TRANSLATE_REGEX function consider regexp_replace()
80 F846 Octet support in regular expression operators
81 F847 Non-constant regular expressions
82 F866 FETCH FIRST clause: PERCENT option
83 R010 Row pattern recognition: FROM clause
84 R020 Row pattern recognition: WINDOW clause
85 R030 Row pattern recognition: full aggregate support
86 S011 Core Distinct data types
87 S011-01 Core USER_DEFINED_TYPES view
88 S023 Basic structured types
89 S024 Enhanced structured types
90 S025 Final structured types
91 S026 Self-referencing structured types
92 S027 Create method by specific method name
93 S028 Permutable UDT options list
94 S041 Basic reference types
95 S043 Enhanced reference types
96 S051 Create table of type partially supported
98 S091 Basic array support partially supported
99 S093 Arrays of distinct types
100 S094 Arrays of reference types
101 S097 Array element assignment
102 S151 Type predicate see pg_typeof()
103 S161 Subtype treatment
104 S162 Subtype treatment for references
105 S202 SQL-invoked routines on multisets
106 S231 Structured type locators
108 S233 Multiset locators
109 S241 Transform functions
110 S242 Alter transform statement
111 S251 User-defined orderings
112 S261 Specific type method
113 S271 Basic multiset support
114 S272 Multisets of user-defined types
115 S274 Multisets of reference types
116 S275 Advanced multiset support
117 S281 Nested collection types
118 S291 Unique constraint on entire row
119 S401 Distinct types based on array types
120 S402 Distinct types based on multiset types
121 S403 ARRAY_MAX_CARDINALITY
122 T011 Timestamp in Information Schema
123 T021 BINARY and VARBINARY data types
124 T022 Advanced support for BINARY and VARBINARY data types
125 T023 Compound binary literals
126 T024 Spaces in binary literals
127 T039 CLOB locator: non-holdable
128 T040 Concatenation of CLOBs
129 T041 Basic LOB data type support
130 T042 Extended LOB data type support
135 T047 POSITION, OCTET_LENGTH, TRIM, and SUBSTRING for BLOBs
136 T048 Concatenation of BLOBs
137 T049 BLOB locator: non-holdable
138 T050 POSITION, CHAR_LENGTH, OCTET_LENGTH, LOWER, TRIM, UPPER, and
141 T053 Explicit aliases for all-fields reference
142 T062 Character length units
143 T076 DECFLOAT data type
144 T101 Enhanced nullability determination
145 T111 Updatable joins, unions, and columns
146 T175 Generated columns mostly supported
147 T176 Sequence generator support supported except for NEXT VALUE FOR
148 T180 System-versioned tables
149 T181 Application-time period tables
150 T200 Trigger DDL similar but not fully compatible
151 T211 Basic trigger capability
152 T218 Multiple triggers for the same event executed in the order
153 created intentionally omitted
154 T231 Sensitive cursors
155 T251 SET TRANSACTION statement: LOCAL option
156 T262 Multiple server transactions
157 T272 Enhanced savepoint management
158 T301 Functional dependencies partially supported
159 T321 Core Basic SQL-invoked routines partially supported
160 T322 Declared data type attributes
161 T324 Explicit security for SQL routines
163 T471 Result sets return value
165 T495 Combined data change and retrieval different syntax
166 T502 Period predicates
167 T511 Transaction counts
168 T522 Default values for IN parameters of SQL-invoked procedures
169 supported except DEFAULT key word in invocation
170 T561 Holdable locators
171 T571 Array-returning external SQL-invoked functions
172 T572 Multiset-returning external SQL-invoked functions
173 T601 Local cursor references
174 T616 Null treatment option for LEAD and LAG functions
175 T618 NTH_VALUE function function exists, but some options missing
176 T619 Nested window functions
178 T641 Multiple column assignment only some syntax variants supported
179 T652 SQL-dynamic statements in SQL routines
180 T654 SQL-dynamic statements in external routines
182 T802 Enhanced JSON data type
183 T824 JSON_TABLE: specific PLAN clause
184 T838 JSON_TABLE: PLAN DEFAULT clause
185 T839 Formatted cast of datetimes to/from character strings
186 T860 SQL/JSON simplified accessor: column reference only
187 T861 SQL/JSON simplified accessor: case-sensitive JSON member
189 T862 SQL/JSON simplified accessor: wildcard member accessor
190 T863 SQL/JSON simplified accessor: single-quoted string literal as
192 T864 SQL/JSON simplified accessor
193 T881 JSON in ordering operations with jsonb, partially supported
194 T882 JSON in multiset element grouping operations
196 M002 Datalinks via SQL/CLI
197 M003 Datalinks via Embedded SQL
198 M004 Foreign data support partially supported
199 M005 Foreign schema support
200 M006 GetSQLString routine
202 M009 GetOpts and GetStatistics routines
203 M010 Foreign-data wrapper support different API
204 M011 Datalinks via Ada
206 M013 Datalinks via COBOL
207 M014 Datalinks via Fortran
209 M016 Datalinks via Pascal
210 M017 Datalinks via PL/I
211 M018 Foreign-data wrapper interface routines in Ada
212 M019 Foreign-data wrapper interface routines in C different API
213 M020 Foreign-data wrapper interface routines in COBOL
214 M021 Foreign-data wrapper interface routines in Fortran
215 M022 Foreign-data wrapper interface routines in MUMPS
216 M023 Foreign-data wrapper interface routines in Pascal
217 M024 Foreign-data wrapper interface routines in PL/I
218 M030 SQL-server foreign data support
219 M031 Foreign-data wrapper general routines
220 X012 Multisets of XML type
221 X013 Distinct types of XML type
222 X015 Fields of XML type
225 X065 XMLParse: binary string input and CONTENT option
226 X066 XMLParse: binary string input and DOCUMENT option
227 X068 XMLSerialize: BOM
228 X073 XMLSerialize: binary string serialization and CONTENT option
229 X074 XMLSerialize: binary string serialization and DOCUMENT option
230 X075 XMLSerialize: binary string serialization
231 X076 XMLSerialize: VERSION
232 X077 XMLSerialize: explicit ENCODING option
233 X078 XMLSerialize: explicit XML declaration
234 X080 Namespaces in XML publishing
235 X081 Query-level XML namespace declarations
236 X082 XML namespace declarations in DML
237 X083 XML namespace declarations in DDL
238 X084 XML namespace declarations in compound statements
239 X085 Predefined namespace prefixes
240 X086 XML namespace declarations in XMLTable
241 X091 XML content predicate
242 X096 XMLExists XPath 1.0 only
243 X100 Host language support for XML: CONTENT option
244 X101 Host language support for XML: DOCUMENT option
245 X110 Host language support for XML: VARCHAR mapping
246 X111 Host language support for XML: CLOB mapping
247 X112 Host language support for XML: BLOB mapping
248 X113 Host language support for XML: STRIP WHITESPACE option
249 X114 Host language support for XML: PRESERVE WHITESPACE option
250 X131 Query-level XMLBINARY clause
251 X132 XMLBINARY clause in DML
252 X133 XMLBINARY clause in DDL
253 X134 XMLBINARY clause in compound statements
254 X135 XMLBINARY clause in subqueries
255 X141 IS VALID predicate: data-driven case
256 X142 IS VALID predicate: ACCORDING TO clause
257 X143 IS VALID predicate: ELEMENT clause
258 X144 IS VALID predicate: schema location
259 X145 IS VALID predicate outside check constraints
260 X151 IS VALID predicate: with DOCUMENT option
261 X152 IS VALID predicate: with CONTENT option
262 X153 IS VALID predicate: with SEQUENCE option
263 X155 IS VALID predicate: NAMESPACE without ELEMENT clause
264 X157 IS VALID predicate: NO NAMESPACE with ELEMENT clause
265 X160 Basic Information Schema for registered XML schemas
266 X161 Advanced Information Schema for registered XML schemas
267 X170 XML null handling options
268 X171 NIL ON NO CONTENT option
269 X181 XML(DOCUMENT(UNTYPED)) type
270 X182 XML(DOCUMENT(ANY)) type
271 X190 XML(SEQUENCE) type
272 X191 XML(DOCUMENT(XMLSCHEMA)) type
273 X192 XML(CONTENT(XMLSCHEMA)) type
275 X201 XMLQuery: RETURNING CONTENT
276 X202 XMLQuery: RETURNING SEQUENCE
277 X203 XMLQuery: passing a context item
278 X204 XMLQuery: initializing an XQuery variable
279 X205 XMLQuery: EMPTY ON EMPTY option
280 X206 XMLQuery: NULL ON EMPTY option
282 X222 XML passing mechanism BY REF parser accepts BY REF but ignores
283 it; passing is always BY VALUE
284 X231 XML(CONTENT(UNTYPED)) type
285 X232 XML(CONTENT(ANY)) type
286 X241 RETURNING CONTENT in XML publishing
287 X242 RETURNING SEQUENCE in XML publishing
288 X251 Persistent XML values of XML(DOCUMENT(UNTYPED)) type
289 X252 Persistent XML values of XML(DOCUMENT(ANY)) type
290 X253 Persistent XML values of XML(CONTENT(UNTYPED)) type
291 X254 Persistent XML values of XML(CONTENT(ANY)) type
292 X255 Persistent XML values of XML(SEQUENCE) type
293 X256 Persistent XML values of XML(DOCUMENT(XMLSCHEMA)) type
294 X257 Persistent XML values of XML(CONTENT(XMLSCHEMA)) type
295 X260 XML type: ELEMENT clause
296 X261 XML type: NAMESPACE without ELEMENT clause
297 X263 XML type: NO NAMESPACE with ELEMENT clause
298 X264 XML type: schema location
299 X271 XMLValidate: data-driven case
300 X272 XMLValidate: ACCORDING TO clause
301 X273 XMLValidate: ELEMENT clause
302 X274 XMLValidate: schema location
303 X281 XMLValidate with DOCUMENT option
304 X282 XMLValidate with CONTENT option
305 X283 XMLValidate with SEQUENCE option
306 X284 XMLValidate: NAMESPACE without ELEMENT clause
307 X286 XMLValidate: NO NAMESPACE with ELEMENT clause
308 X300 XMLTable XPath 1.0 only
309 X305 XMLTable: initializing an XQuery variable