Re: jsonb concatenate operator's semantics seem questionable
От | Jim Nasby |
---|---|
Тема | Re: jsonb concatenate operator's semantics seem questionable |
Дата | |
Msg-id | 555BC978.1000302@BlueTreble.com обсуждение исходный текст |
Ответ на | Re: jsonb concatenate operator's semantics seem questionable (Marko Tiikkaja <marko@joh.to>) |
Ответы |
Re: jsonb concatenate operator's semantics seem questionable
|
Список | pgsql-hackers |
On 5/18/15 3:15 PM, Marko Tiikkaja wrote: > On 2015-05-18 22:10, Josh Berkus wrote: >> On 05/18/2015 01:04 PM, Ryan Pedela wrote: >>> In the context of splitting shallow and deep merge into two operators, I >>> think + is better for shallow and || better for deep. The reason for + >>> is because many programming languages have this behavior. If I see the >>> below code in language I have never used before: >>> >>> objC = objA + objB >>> >>> My default assumption is that + performs a shallow merge. Like I said, I >>> would rather there just be one operator. >> >> Thank you, that helps. Anyone else? > > If everyone thinks the operators mean different things, we could just > not add any operators and only provide functions instead. My $0.02: I would expect || to be what I want to use to add something to an existing JSON document, no matter what the path of what I'm adding is. In other words, deep merge. I certainly wouldn't expect it to be shallow. If we get this wrong now, we'll be stuck with it forever. At a minimum I think we should use anything other than || until we can figure this out. That leaves || available for whichever case we decide on. BTW, if people are set on shallow merge being || then I'd suggest ||| as the deep merge operator. -- Jim Nasby, Data Architect, Blue Treble Consulting Data in Trouble? Get it in Treble! http://BlueTreble.com
В списке pgsql-hackers по дате отправления: