2016-12-03 77 views
0

我有一個表在postgre SQL這樣 這array查詢使用列表排列在PostgreSQL

+----+--------+-----------+ 
| id | name | array | 
+----+--------+-----------+ 
| 1 | apple | {1, 2, 3} | 
| 2 | mango | {2, 3, 4} | 
| 3 | banana | {4, 5, 6} | 
+----+--------+-----------+ 

使用1種維整數數據類型,我想要做一個查詢,找到array列每列包含我的號碼列表中的至少一個號碼。例如,搜索每個陣列,看它是否包含2, 4

有沒有比使用像這樣的查詢更好的解決方案?

SELECT * FROM table WHERE 2 = ANY (array) OR 4 = ANY (array) 

回答

1

你可以嘗試以下方法:

SELECT * 
FROM yourTable 
WHERE '{1,4}' && array