1
我有一個BIGINT [] colunm:選擇任意在任何(數組)(數組)
person
------
id | name | other_information
------------------------------
1 | Zé | {1,2,3}
2 | João | {1,3}
3 | Maria | {3,5}
我需要選擇與其它資料2或5人。怎麼樣?
我有一個BIGINT [] colunm:選擇任意在任何(數組)(數組)
person
------
id | name | other_information
------------------------------
1 | Zé | {1,2,3}
2 | João | {1,3}
3 | Maria | {3,5}
我需要選擇與其它資料2或5人。怎麼樣?
select *
from person
where 2 = ANY(other_information)
or 5 = ANY(other_information)
但是,不推薦使用數組,因爲它會導致非規格化模式。
提示:數組不是集合;搜索特定數組元素可能是數據庫錯誤設計的標誌。考慮使用一個帶有 行的單獨表格作爲數組元素。這將更容易 進行搜索,並且可能對大量元素進行更好的縮放。
你能規範化你的模式,所以你不會有這個問題? – RedFilter 2012-07-15 15:24:23
對不起,但如何? @RedFilter – Falci 2012-07-15 15:29:34
閱讀[數據庫規範化](http://phlonx.com/resources/nf3/)。 – RedFilter 2012-07-15 15:32:06