作爲測試我創造了這個模式:PostgreSQL的 - 基本數組和ARRAY_AGG
CREATE TABLE simple_table (client_id int4, order_id int4);
INSERT INTO simple_table (client_id, order_id)
VALUES
(1,2),(1,3),(1,4),(1,6),(1,8),(1,12),(1,16),(1,18),(1,25),(1,32),(1,33),(1,37),(1,43),
(1,56),(1,57),(1,66),(2,2),(2,3),(2,5),(2,7),(2,9),(2,12),(2,17),(2,19),(2,22),(2,30),
(2,33),(2,38),(2,44),(2,56),(2,58),(2,66)
;
然後使用ARRAY_AGG:
SELECT client_id, array_agg(order_id) FROM simple_table GROUP BY client_id;
創建數組客戶端1和客戶端2:
| CLIENT_ID | ARRAY_AGG |
----------------------------------------------------------
| 1 | 2,3,4,6,8,12,16,18,25,32,33,37,43,56,57,66 |
| 2 | 2,3,5,7,9,12,17,19,22,30,33,38,44,56,58,66 |
我想比較的2行標識類似的值。從Postgresql文檔試過&& overlap (have elements in common) ARRAY[1,4,3] && ARRAY[2,1]
,但我遇到了問題。
也許我看着這個錯誤。任何幫助或指導,將不勝感激!
感謝,包括樣本數據,你在做什麼試圖實現+1。但是,如果您能夠準確地顯示出您遇到的問題(意外的結果,錯誤消息等)以及您運行的SQL的* exact *文本,那就太好了。最後,請始終在問題中包含PostgreSQL版本('SELECT version()')。 –
對不起。 9.2在OSX上10.6.8 –