Re: Fwd: JSONB order?
От | Adrian Klaver |
---|---|
Тема | Re: Fwd: JSONB order? |
Дата | |
Msg-id | bee2374f-9005-20bc-22e4-8214cbde1627@aklaver.com обсуждение исходный текст |
Ответ на | Fwd: JSONB order? (Tony Shelver <tshelver@gmail.com>) |
Список | pgsql-general |
On 11/5/20 7:45 AM, Tony Shelver wrote: > > > ---------- Forwarded message --------- > From: *Tony Shelver* <tshelver@gmail.com <mailto:tshelver@gmail.com>> > Date: Thu, 5 Nov 2020 at 17:45 > Subject: Re: JSONB order? > To: Christophe Pettus <xof@thebuild.com <mailto:xof@thebuild.com>> > > > Thanks Christophe, that's what I thought. > Just seemed weird that they were 'disordered' in exactly the same way > every time. Probably because that resolves to the most efficient way to store in jsonb for that particular record. > > FYI, as of Python 3.7, dicts /_are_/ ordered. By insertion order so updating a dict with a new item will add new key to end. > > The problem is that we are possibly going to have many versions of these > forms with slightly differing keys, which will be a pain to order in > some hard coded way. > > > > On Thu, 5 Nov 2020 at 17:40, Christophe Pettus <xof@thebuild.com > <mailto:xof@thebuild.com>> wrote: > > > > > On Nov 5, 2020, at 07:34, Tony Shelver <tshelver@gmail.com > <mailto:tshelver@gmail.com>> wrote: > > But... seen above, the order gets mixed up. > > > > Any ideas? > > JSON objects, like Python dicts, are not automatically ordered by > key. Once you move from the column space to the JSON object space, > you can't rely on the object keys being in a consistent order. > > You'll want to have a step when ingesting the JSON object into a > report that lines up the key values appropriately with the right > presentation in the report. > -- > -- Christophe Pettus > xof@thebuild.com <mailto:xof@thebuild.com> > -- Adrian Klaver adrian.klaver@aklaver.com
В списке pgsql-general по дате отправления: