Оба проверяют, что по пути
user.city находится значение "Denver", но первый использует извлечение значения по пути и оператор сравнения, а второй — оператор вхождения.B-tree индекс по выражению, использует операторы сравнения:
data->'user'->>'city' = 'Denver'
GIN-индекс, использует операторы вхождения:
data @> '{"user": {"city": "Denver"}}'@WebDev_Plus
