diff options
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/regress/expected/sqljson.out | 10 | ||||
-rw-r--r-- | src/test/regress/sql/sqljson.sql | 5 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/test/regress/expected/sqljson.out b/src/test/regress/expected/sqljson.out index 0883261535d..be27bce9d32 100644 --- a/src/test/regress/expected/sqljson.out +++ b/src/test/regress/expected/sqljson.out @@ -302,12 +302,22 @@ SELECT JSON_SERIALIZE('{ "a" : 1 } ' RETURNING bytea); \x7b20226122203a2031207d20 (1 row) +SELECT JSON_SERIALIZE('{ "a" : 1 } ' RETURNING varchar); + json_serialize +---------------- + { "a" : 1 } +(1 row) + SELECT pg_typeof(JSON_SERIALIZE(NULL)); pg_typeof ----------- text (1 row) +-- only string types or bytea allowed +SELECT JSON_SERIALIZE('{ "a" : 1 } ' RETURNING jsonb); +ERROR: cannot use RETURNING type jsonb in JSON_SERIALIZE +HINT: Try returning a string type or bytea EXPLAIN (VERBOSE, COSTS OFF) SELECT JSON_SERIALIZE('{}'); QUERY PLAN ----------------------------------------------------- diff --git a/src/test/regress/sql/sqljson.sql b/src/test/regress/sql/sqljson.sql index 3db81a7ba86..c2742b40f1d 100644 --- a/src/test/regress/sql/sqljson.sql +++ b/src/test/regress/sql/sqljson.sql @@ -60,8 +60,13 @@ SELECT JSON_SERIALIZE('{ "a" : 1 } '); SELECT JSON_SERIALIZE('1'); SELECT JSON_SERIALIZE('1' FORMAT JSON); SELECT JSON_SERIALIZE('{ "a" : 1 } ' RETURNING bytea); +SELECT JSON_SERIALIZE('{ "a" : 1 } ' RETURNING varchar); SELECT pg_typeof(JSON_SERIALIZE(NULL)); +-- only string types or bytea allowed +SELECT JSON_SERIALIZE('{ "a" : 1 } ' RETURNING jsonb); + + EXPLAIN (VERBOSE, COSTS OFF) SELECT JSON_SERIALIZE('{}'); EXPLAIN (VERBOSE, COSTS OFF) SELECT JSON_SERIALIZE('{}' RETURNING bytea); |