$min)', '{"min":[99,0,11,7]}')
И так то же отработал :
select jsonb_path_exists('{"a":[1,2,3,4,5]}', '$.a[*] ? (@ == $min[*])', '{"min":[99,0,11,7]}')
Но они не используют индекс.
Причем интересно - может баг а может нет - работаю оба варианта $min\$min[*]
вы тестовый пример сделайте и киньте архивчик, чтобы я не гадал. А про индексы вот несколько слайдов http://www.sai.msu.su/~megera/postgres/talks/jsonpath-pgconfeu-2019.pdf (#51, #52)
Так, а я какой читал? ;) Минуту, сейчас проверю...
А в стандарте (ISO/IEC TR19075-6): — Comparison of arrays or objects to anything, even themselves, is not supported. There is no “deep equals”. И я даже и не пробовал, поэтому. То ли я неправильно понял, то ли версия не стандарта не та... то ли кто-то реализовал больше, чем нужно/можно. ;)
этот вариант я обсуждал с другим коллегой, он собственно сделал этого франкенштейна, но индекс здесь не будет работать, вам 2 человека вчера написали почему и главное как сделать чтобы (возможно) это заработало.
Обсуждают сегодня