BUG #16092: json[b]_to_recordset and json[b]_populate_record do not read properties with mixed-case names
От | PG Bug reporting form |
---|---|
Тема | BUG #16092: json[b]_to_recordset and json[b]_populate_record do not read properties with mixed-case names |
Дата | |
Msg-id | 16092-a31312333f90cf85@postgresql.org обсуждение исходный текст |
Ответы |
Re: BUG #16092: json[b]_to_recordset and json[b]_populate_record do not read properties with mixed-case names
|
Список | pgsql-bugs |
The following bug has been logged on the website: Bug reference: 16092 Logged by: Dirk Weinhardt Email address: dweinhardt78+pgsql-bugs@gmail.com PostgreSQL version: 11.5 Operating system: Alpine Linux Description: Using Docker container image postgres:11.5-alpine pulled on 2019-10-31 14:12:00 CET. Given this fairly simple piece of JSON data: [{"aName": "foo"}] When any of these queries is executed: SELECT x.* FROM jsonb_to_recordset('[{"aName": "foo"}]'::jsonb) AS x(aName text); SELECT x.* FROM json_to_recordset('[{"aName": "foo"}]'::json) AS x(aName text); SELECT x.* FROM jsonb_to_recordset('[{"aname": "foo"}]'::jsonb) AS x(aname text); SELECT x.* FROM json_to_recordset('[{"aname": "foo"}]'::json) AS x(aname text); Then the output should be: aname (text) ----------------- foo But for the first and the second query (the ones with mixed-case property names) the actual output is: aname (text) ----------------- NULL The same issue also exists with these queries: DROP TYPE IF EXISTS x; CREATE TYPE x AS (aName text); SELECT x.* FROM jsonb_array_elements('[{"aName": "foo"}]'::jsonb) AS s, jsonb_populate_record(NULL::x, s.value) AS x; SELECT x.* FROM json_array_elements('[{"aName": "foo"}]'::json) AS s, json_populate_record(NULL::x, s.value) AS x;
В списке pgsql-bugs по дате отправления: