假設我有一個users
和companies
表,其中1個用戶可以爲多個公司工作。在這種情況下,我使用JSON字段對其進行建模。Postgres:選擇json字段數組中包含特定值的所有字段?
users
- id: PK
- jobs: json
樣品jobs
領域:[{"company_id": 1, "title": "Engineer" }, {"company_id": 2, "title": "Accountant"}]
鑑於公司ID,是否有一種方式來運行一個SQL語句(Postgres的9.4),可以提取已在該公司工作的所有用戶ID?喜歡的東西:
select id from users where map(jobs, "company_id") contains <?>
謝謝!這工作。我接受這個,因爲這也適用於'json'字段類型。 @jgm的另一個答案也適用,但它需要你的字段是'jsonb'。 – huy