Как вставить данные в столбец типа данных «JSON» в Postgresql - PullRequest
0 голосов
/ 09 июня 2018

У меня есть следующая таблица POSTGRESQL

 id | name |    email     | weightsovertime |         joined          
 20 | Le   | le@gmail.com | []              | 2018-06-09 03:17:56.718

Я хотел бы знать, как поместить данные (объект JSON или просто объект) в массив weightsovertime.

И так как я делаю фоновый сервер, я хотел бы знать запрос KnexJS, который делает это.

Я попробовал следующий синтаксис, но он не работает

update tableName set weightsovertime = array_append(weightsovertime,{"weight":55,"date":"2/3/96"}) where id = 20;

Спасибо

1 Ответ

0 голосов
/ 09 июня 2018

array_append для собственных массивов - массив JSON внутри столбца jsonb - это нечто другое.

Предполагая, что weightsovertime является jsonb (или json), вам необходимо использовать оператор объединения : ||

например:

update the_table
  set weitghtsovertime = weightsovertime||'[{"weight": 55, "date": "1996-03-02"}]'
where id = 20;

Онлайн пример: http://rextester.com/XBA24609

...