Collections and Records
| No. | Oracle Database | GaussDB |
|---|---|---|
| 1 | Associative array (or index-by table) | Supported. |
| 2 | VARRAY (variable-size array) | Supported. |
| 3 | Nested table | Supported. |
| 4 | record | Supported. |
| No. | Oracle Database | GaussDB | Difference |
|---|---|---|---|
| 1 | Associative array (or index-by table) syntax: TABLE OF datatype [ NOT NULL ] INDEX BY { PLS_INTEGER | BINARY_INTEGER | VARCHAR2 ( v_size ) | data_type } | Supported, with differences. |
|
| 2 | VARRAY (variable-size array) syntax: { VARRAY | [ VARYING ] ARRAY } ( size_limit ) OF datatype [ NOT NULL ] | Supported, with differences. |
|
| 3 | Nested table syntax: TABLE OF datatype [ NOT NULL ] | Supported, with differences. |
|
| 4 | record syntax: TYPE record_type IS RECORD ( field_definition [, field_definition]... ) ; | Supported. |
|
| No. | Oracle Database | GaussDB |
|---|---|---|
| 1 | collection_type ( [ value [, value ]... ] ) | Supported. |
| No. | Oracle Database | 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 Database | GaussDB | Difference |
|---|---|---|---|
| 1 | = | Supported, with differences. |
|
| 2 | <> | Supported, with differences. |
|
| 3 | IS[NOT] NULL | Supported. | - |
| 4 | ^= | Supported, with differences. |
|
| 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. |
|
| No. | Oracle Database | GaussDB |
|---|---|---|
| 1 | MULTISET UNION [ALL | DISTINCT] | Supported. |
| 2 | MULTISET EXCEPT [ALL | DISTINCT] | Supported. |
| 3 | MULTISET INTERSECT [ALL | DISTINCT] | Supported. |
| No. | Oracle Database | 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. | GaussDB supports only nested tables. |
| No. | Oracle Database | GaussDB |
|---|---|---|
| 1 | Constructors | Supported. |
| 2 | %ROWTYPE to declare a variable | Supported. |
| 3 | Defining constants | Not supported. |
| No. | Oracle Database | GaussDB | Difference |
|---|---|---|---|
| 1 | unnest_table(anynesttable) | Supported. | - |
| 2 | unnest_table(anyindexbytable) | Supported. | - |
| 3 | table(anyarray) | Not supported. | GaussDB uses the unnest (anyarray) function for equivalent rewriting. |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.