Collections and Records
No. |
Oracle |
GaussDB |
---|---|---|
1 |
Associative array (or index-by table) |
Supported. |
2 |
VARRAY (variable-size array) |
Supported. |
3 |
Nested table |
Supported. |
4 |
record |
Supported. |
Type |
Oracle |
GaussDB |
Difference |
---|---|---|---|
Associative array (or index-by table) |
TABLE OF datatype [ NOT NULL ] INDEX BY { PLS_INTEGER | BINARY_INTEGER | VARCHAR2 ( v_size ) | data_type } |
Supported, with differences. |
|
VARRAY (variable-size array) |
{ VARRAY | [ VARYING ] ARRAY } ( size_limit ) OF datatype [ NOT NULL ] |
Supported, with differences. |
|
Nested table |
TABLE OF datatype [ NOT NULL ] |
Supported, with differences. |
|
record |
TYPE record_type IS RECORD ( field_definition [, field_definition]... ) ; |
Supported. |
|
No. |
Oracle |
GaussDB |
---|---|---|
1 |
collection_type ( [ value [, value ]... ] ) |
Supported. |
No. |
Oracle |
GaussDB |
Difference |
---|---|---|---|
1 |
Associative array (or index-by table) |
Supported. |
- |
2 |
VARRAY (variable-size array) |
Supported, with differences. |
|
3 |
Nested table |
Supported. |
- |
4 |
record |
Supported, with differences. |
|
No. |
Oracle |
GaussDB |
Difference |
---|---|---|---|
1 |
= |
Supported, with differences. |
Oracle: The sequence of collection members is ignored during comparison. GaussDB: The comparison is performed strictly based on the sequence of collection members. |
2 |
<> |
Supported, with differences. |
Oracle: The sequence of collection members is ignored during comparison. GaussDB: The comparison is performed strictly based on the sequence of collection members. |
3 |
IS[NOT] NULL |
Supported. |
- |
4 |
^= |
Supported, with differences. |
Oracle: The sequence of collection members is ignored during comparison. GaussDB: The comparison is performed strictly based on the sequence of collection members. |
5 |
~= |
Not supported. |
- |
6 |
IS[NOT] A SET |
Not supported. |
- |
7 |
IS [NOT] EMPTY |
Not supported. |
- |
8 |
expr [ NOT ] MEMBER [ OF ] nested_table |
Not supported. |
- |
9 |
nested_table1 [ NOT ] SUBMULTISET [ OF ] nested_table2 |
Not supported. |
- |
10 |
[NOT] IN |
Supported, with differences. |
Oracle: The sequence of collection members is ignored during comparison. GaussDB: The comparison is performed strictly based on the sequence of collection members. |
No. |
Oracle |
GaussDB |
---|---|---|
1 |
MULTISET UNION [ALL | DISTINCT] |
Supported. |
2 |
MULTISET EXCEPT [ALL | DISTINCT] |
Supported. |
3 |
MULTISET INTERSECT [ALL | DISTINCT] |
Supported. |
No. |
Oracle |
GaussDB |
Difference |
---|---|---|---|
1 |
exists(idx) |
Supported. |
- |
2 |
extend[(count[, idx])] |
Supported, with differences. |
GaussDB supports only nested tables. |
3 |
delete[(idx1[, idx2])] |
Supported. |
- |
4 |
trim[(n)] |
Supported, with differences. |
GaussDB supports only nested tables. |
5 |
count |
Supported. |
- |
6 |
first |
Supported. |
- |
7 |
last |
Supported. |
- |
8 |
prior(idx) |
Supported. |
- |
9 |
next(idx) |
Supported. |
- |
10 |
limit |
Supported, with differences. |
In GaussDB, the maximum number of elements that can be stored in a nested-table collection is returned. This function applies only to the array type. The return value is null. |
No. |
Oracle |
GaussDB |
---|---|---|
1 |
Constructors |
Supported. |
2 |
%ROWTYPE to declare a variable |
Supported. |
3 |
Defining constants |
Not supported. |
No. |
Oracle |
GaussDB |
---|---|---|
1 |
unnest_table(anynesttable) |
Supported. |
2 |
unnest_table(anyindexbytable) |
Supported. |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot