У меня есть таблица Trip
в PostgreSQL DB, в таблице есть столбец с именем meta
.
Пример meta
в одной строке выглядит так:
meta = {"runTime": 3922000, "distance": 85132, "duration": 4049000, "fuelUsed": 19.595927498516176}
Чтобы выбрать поездку с наибольшим значением, разделенным на «расстояние» и «время выполнения», я запускаю запрос:
select MAX(tp."meta"->>'distance'/tp."meta"->>'runTime') maxkph FROM "Trip" tp
, но получаю ОШИБКУ:
/* ERROR: operator does not exist: unknown / jsonb LINE 1: MAX(tp."meta"->>'distance'/tp."meta"...
Я также попытался:
select MAX((tp."meta"->>'distance')/(tp."meta"->>'runTime')) maxkph FROM "Trip" tp
, но получил еще одну ОШИБКУ:
/* ERROR: operator does not exist: text / text LINE 1: ...MAX((tp."meta"->>'distance')/(tp."meta...
Не могли бы вы помочь мне решить эту проблему?