2016-07-05 69 views
1

情景:我有具有存儲JSON格式的值表的預期結果,以獲得不同的或 重複記錄的column.I'm的 一個以json格式存儲的值(json列值 值之一)的基礎上。PostgreSQL的 - 獲取的Json的基礎上重複的記錄值

My table have 3 columns : 
1. Id (integer) 
ex. value - 20 
2. Description (text) 
ex.value - {"first_name":"John","last_name":"Doe","company_id":"26"} 
3. Created (integer) 

現在我想的的基礎上重複的記錄COMPANY_ID價值和是否有任何功能提供的PostgreSQL這樣的要求?

技術信息:

的PostgreSQL的版本 - 9.5

+0

您可以使用[DISTINCT ON](https://www.postgresql.org/docs/current/static/sql-select.html#SQL-DISTINCT) '如果你有'jsonb'',選擇distinct(ex.value - >>'company_id')'(或'select distinct(ex.value - >'company_id')'),但其他列中的值不能保證(除非你提供額外的'按'表達式順序。 – pozs

回答

1

的Postgres 9.5(以及一些早期版本)有一些內置的查詢JSON文本支持。請嘗試以下查詢:

SELECT * 
FROM yourTable 
WHERE Description->>'company_id' = 'some_value' 

Documentation