Re: a bug jsonb? - Mailing list pgsql-general

From Josef Šimánek
Subject Re: a bug jsonb?
Date
Msg-id CAFp7Qwrx=oG8BLtMRfyDZwcD1zBkO6Pz-JdgwoPxVL8fO3o6hg@mail.gmail.com
Whole thread Raw
In response to a bug jsonb?  (Станислав Губанов <gubanovss@gmail.com>)
List pgsql-general
If I understand well your question, this is expected with JSONB.

see https://www.postgresql.org/docs/current/datatype-json.html for more info:

...jsonb does not preserve white space, does not preserve the order of object keys, and does not keep duplicate object keys. If duplicate keys are specified in the input, only the last value is kept...

čt 22. 11. 2018 v 15:59 odesílatel Станислав Губанов <gubanovss@gmail.com> napsal:
Hello!

I'd like to clarify, if this a bug or a feature

simple JSON 
{"rootC":{},"rootB":{},"rootZ":{},"rootA":[]}

Table for data
create table test_json (json_data jsonb); 

put json into table 
INSERT INTO test_json (json_data) VALUES ('{"rootC":{},"rootB":{},"rootZ":{},"rootA":[]}');

order of key in json is changed in such query:
SELECT json_data FROM test_json;
expected result: {"rootC":{},"rootB":{},"rootZ":{},"rootA":[]}
actual result: {"rootA": [], "rootB": {}, "rootC": {}, "rootZ": {}}

----- console log ----- 
test=# create table test_json (json_data jsonb);
CREATE TABLE
test=# INSERT INTO test_json (json_data) VALUES ('{"rootC":{},"rootB":{},"rootZ":{},"rootA":[]}');
INSERT 0 1
test=# select json_data from test_json;
                      json_data
------------------------------------------------------
 {"rootA": [], "rootB": {}, "rootC": {}, "rootZ": {}}
(1 row)

test=# drop table test_json;
DROP TABLE

--
Sincerely, Stanislav!

pgsql-general by date:

Previous
From: Станислав Губанов
Date:
Subject: a bug jsonb?
Next
From: Francisco Olarte
Date:
Subject: Re: a bug jsonb?