Spanner now supports the following PostgreSQL JSONB functions
Share
Services
## Feature
Spanner now supports the following PostgreSQL JSONB functions:
* `jsonb_array_elements()`
* `spanner.bool_array()`
* `spanner.float32_array()`
* `spanner.float64_array()`
* `spanner.int64_array()`
* `spanner.string_array()`
For more information, see [JSONB functions](https://cloud.google.com/spanner/docs/reference/postgresql/functions-and-operators#jsonb%5Ffunctions) and [Spanner specific JSONB functions](https://cloud.google.com/spanner/docs/reference/postgresql/functions-and-operators#spanner-jsonb-functions).
## Feature
Spanner now supports the following GoogleSQL JSON functions:
* [BOOL\_ARRAY](https://cloud.google.com/spanner/docs/reference/standard-sql/json%5Ffunctions#bool%5Farray%5Ffor%5Fjson): Converts a JSON array of booleans to a SQL `ARRAY<BOOL>` value.
* [FLOAT32](https://cloud.google.com/spanner/docs/reference/standard-sql/json%5Ffunctions#float%5Ffor%5Fjson): Converts a JSON number to a SQL `FLOAT32` value.
* [FLOAT32\_ARRAY](https://cloud.google.com/spanner/docs/reference/standard-sql/json%5Ffunctions#float%5Farray%5Ffor%5Fjson): Converts a JSON array of numbers to a SQL `ARRAY<FLOAT32>` value.
* [FLOAT64\_ARRAY](https://cloud.google.com/spanner/docs/reference/standard-sql/json%5Ffunctions#double%5Farray%5Ffor%5Fjson): Converts a JSON array of numbers to a SQL `ARRAY<FLOAT64>` value.
* [INT64\_ARRAY](https://cloud.google.com/spanner/docs/reference/standard-sql/json%5Ffunctions#int64%5Farray%5Ffor%5Fjson): Converts a JSON array of numbers to a SQL `INT64_ARRAY` value.
* [STRING\_ARRAY](https://cloud.google.com/spanner/docs/reference/standard-sql/json%5Ffunctions#string%5Farray%5Ffor%5Fjson): Converts a JSON array of strings to a SQL `ARRAY<STRING>` value.
## Feature
Spanner now supports the GoogleSQL `PDML_MAX_PARALLELISM` statement-level hint. For more information, see [Statement hints](https://cloud.google.com/spanner/docs/reference/standard-sql/dml-syntax#statement%5Fhints).
## Feature
The following are now supported for the `INSERT` statement:
* [INSERT OR UPDATE](https://cloud.google.com/spanner/docs/reference/standard-sql/dml-syntax#insert-or-update) and [INSERT OR IGNORE](https://cloud.google.com/spanner/docs/reference/standard-sql/dml-syntax#insert-ignore) DML statement now supports the [THEN RETURN](https://cloud.google.com/spanner/docs/reference/standard-sql/dml-syntax#insert-and-then-return) clause in GoogleSQL.
* [INSERT…ON CONFLICT](https://cloud.google.com/spanner/docs/reference/postgresql/dml-syntax#on%5Fconflict%5Fclause) DML statement now supports the [RETURNING](https://cloud.google.com/spanner/docs/reference/postgresql/dml-syntax#insert-returning) clause in PostgreSQL.
* [THEN RETURN](https://cloud.google.com/spanner/docs/reference/standard-sql/dml-syntax#insert-and-then-return) now supports the `WITH ACTION` clause in GoogleSQL.
## Feature
Spanner now supports geo-partitioning (in Preview). You can use geo-partitioning to segment and store rows in your database table across different configurations. For more information, see the [Geo-partitioning overview](https://cloud.google.com/spanner/docs/geo-partitioning).