diff options
| author | Andrew Dunstan | 2014-01-29 20:39:01 +0000 |
|---|---|---|
| committer | Andrew Dunstan | 2014-01-29 20:39:01 +0000 |
| commit | 5264d9154178d3aeaa0359b43a450298a7ce7281 (patch) | |
| tree | f98aaa0c488b9e20e9e1621cbe74bc2e6f5f0aa1 /src/test | |
| parent | 699b1f40da3139def660235fa8a782ec8dd8f575 (diff) | |
Add json_array_elements_text function.
This was a notable omission from the json functions added in 9.3 and
there have been numerous complaints about its absence.
Laurence Rowe.
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/regress/expected/json.out | 34 | ||||
| -rw-r--r-- | src/test/regress/expected/json_1.out | 34 | ||||
| -rw-r--r-- | src/test/regress/sql/json.sql | 6 |
3 files changed, 64 insertions, 10 deletions
diff --git a/src/test/regress/expected/json.out b/src/test/regress/expected/json.out index 64613313df0..04b969ae101 100644 --- a/src/test/regress/expected/json.out +++ b/src/test/regress/expected/json.out @@ -801,7 +801,7 @@ select '{"f2":["f3",1],"f4":{"f5":99,"f6":"stringy"}}'::json#>>'{f2,1}'; (1 row) -- array_elements -select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]'); +select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]'); json_array_elements ----------------------- 1 @@ -810,9 +810,10 @@ select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]' null {"f1":1,"f2":[7,8,9]} false -(6 rows) + "stringy" +(7 rows) -select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]') q; +select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]') q; value ----------------------- 1 @@ -821,7 +822,32 @@ select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]}, null {"f1":1,"f2":[7,8,9]} false -(6 rows) + "stringy" +(7 rows) + +select json_array_elements_text('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]'); + json_array_elements_text +-------------------------- + 1 + true + [1,[2,3]] + + {"f1":1,"f2":[7,8,9]} + false + stringy +(7 rows) + +select * from json_array_elements_text('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]') q; + value +----------------------- + 1 + true + [1,[2,3]] + + {"f1":1,"f2":[7,8,9]} + false + stringy +(7 rows) -- populate_record create type jpop as (a text, b int, c timestamp); diff --git a/src/test/regress/expected/json_1.out b/src/test/regress/expected/json_1.out index 37d5bc07ae8..07b25ca96c6 100644 --- a/src/test/regress/expected/json_1.out +++ b/src/test/regress/expected/json_1.out @@ -801,7 +801,7 @@ select '{"f2":["f3",1],"f4":{"f5":99,"f6":"stringy"}}'::json#>>'{f2,1}'; (1 row) -- array_elements -select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]'); +select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]'); json_array_elements ----------------------- 1 @@ -810,9 +810,10 @@ select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]' null {"f1":1,"f2":[7,8,9]} false -(6 rows) + "stringy" +(7 rows) -select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]') q; +select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]') q; value ----------------------- 1 @@ -821,7 +822,32 @@ select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]}, null {"f1":1,"f2":[7,8,9]} false -(6 rows) + "stringy" +(7 rows) + +select json_array_elements_text('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]'); + json_array_elements_text +-------------------------- + 1 + true + [1,[2,3]] + + {"f1":1,"f2":[7,8,9]} + false + stringy +(7 rows) + +select * from json_array_elements_text('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]') q; + value +----------------------- + 1 + true + [1,[2,3]] + + {"f1":1,"f2":[7,8,9]} + false + stringy +(7 rows) -- populate_record create type jpop as (a text, b int, c timestamp); diff --git a/src/test/regress/sql/json.sql b/src/test/regress/sql/json.sql index 67e97cba9e5..2d3f0bcc612 100644 --- a/src/test/regress/sql/json.sql +++ b/src/test/regress/sql/json.sql @@ -265,8 +265,10 @@ select '{"f2":["f3",1],"f4":{"f5":99,"f6":"stringy"}}'::json#>>'{f2,1}'; -- array_elements -select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]'); -select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false]') q; +select json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]'); +select * from json_array_elements('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]') q; +select json_array_elements_text('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]'); +select * from json_array_elements_text('[1,true,[1,[2,3]],null,{"f1":1,"f2":[7,8,9]},false,"stringy"]') q; -- populate_record create type jpop as (a text, b int, c timestamp); |
