Postgis: получить значение из столбца json type - PullRequest
0 голосов
/ 21 октября 2018

У меня есть столбец со значениями широты / долготы в этом формате:

{ "lat": 35.910067092299997, "lon": -79.074502748100002 }

Я думаю, что это формат JSON, поэтому я пытаюсь использовать какой-то пример, который я нашел, включая операторы этого типа - >> @>...но ничего не работает, запрос все равно не выполняется.

Что я делаю не так?Пример ошибок, которые я получаю:

ERROR:  operator does not exist: character varying @> unknown

1 Ответ

0 голосов
/ 21 октября 2018

Ваша ошибка говорит о том, что ваша левая часть уравнения «меняется символами» (тип текстовых данных с фиксированной длиной), поэтому вы не можете использовать операторы json.Сначала вы должны привести его к типу json или jsonb, а затем все прекрасно работает.

select '{ "lat": 35.910067092299997, "lon": -79.074502748100002 }'::json->'lat'
...