2017-10-10 15 views
1

{lat: value, lon: value}과 같은 PostgreSQL 데이터베이스에 JSONB 열이 있습니다. 한 번에 특정 값을 변경하려고합니다. 위도하지만 bookshelf.js 또는 knex.js를 사용하여 어떻게이 작업을 수행 할 수 있는지 잘 모르겠습니다. Postgres 문서에 지정된 jsonb_set() 메서드를 사용하여 시도했지만 제대로 사용했다면 확실하지 않습니다. 누군가 제게 이걸 어떻게 할 수 있겠습니까? 또는이 작업을 수행하기위한 올바른 구문은 무엇입니까? 감사.knexjs, bookshelfjs를 사용하여 JSONB 열을 업데이트하는 방법

답변

1

AFAIK는 postgresql jsonb 열에 쓰고 데이터를 추출하는 것을 지원하는 knex 기반의 것은 objection.js ORM입니다. 함께 jsonb_set 사용하는 방법을 https://github.com/tgriesser/knex/issues/2264

더 많은 예제 : 당신은 원래의 대답 여기에 생성 된 SQL을 https://runkit.com/embed/44ifdhzxejf1

확인할 수 있습니다

knex('table').update({ 
    jsonbColumn: knex.raw(`jsonb_set(??, '{lat}', ?)`, ['jsonbColumn', newLatValue]) 
}) 

: 일반 knex와

당신은 참조를 작성하는 원시 사용할 필요가 knex는 다음 답안에서 찾을 수 있습니다.

How to update a jsonb column's field in PostgreSQL?

What is the best way to use PostgreSQL JSON types with NodeJS

+0

감사! 이것은 나를 위해 일했다. –