Hello, I have encountered unanticipated behaviour with a JSONB operator, and wanted to make sure I am not misunderstanding its intended use.
When using the @> operator, I get this result. select '{"a": [1]}'::jsonb @> '{"a": []}'::jsonb; ?column? ---------- t (1 row) However, given the phrasing in the documentation, I would have expected False. "Does the left JSON value contain the right JSON path/value entries at the top level?" Particularly given the following: select '[1]'::jsonb = '[]'::jsonb; ?column? ---------- f (1 row) So the keys are the same, the values (when compared directly) are not, but @> returns True. Have I misunderstood the usage of the operator? The above queries have been run on postgres 14, if that helps. -- Brian Mendoza br...@rotamap.net Rotamap www.rotamap.net 020 7631 1555 3 Tottenham Street London W1T 2AF Registered in England No. 04551928