Обсуждение: ...where 'value' = array[]
i have table, like so: group.group_name (varchar) | group.group_array (varchar[]) - west coast | {CA,WA} east coast | {NY,MA} i can do this: select group_name from group where 'CA' = any(array['CA','WA']); but i need to select group_name where state_abbreviation is in group_array, something like: select group_name from group where 'CA' = any(group_array); or select group_name from group where 'CA' in (group_array); or select group_name from group where 'CA' in (select group_array from group where true); all ()[]{} have me confused http://www.nabble.com/IN-with-arrays-td10011058.html
zach cruise <zachc1980@gmail.com> writes: > but i need to select group_name where state_abbreviation is in > group_array, something like: > select group_name from group where 'CA' = any(group_array); Yeah? What's the problem? regression=# create table g (group_name text, group_array text[]); CREATE TABLE regression=# insert into g values ('west', '{CA,WA}'); INSERT 0 1 regression=# insert into g values ('east', '{NY,MA}'); INSERT 0 1 regression=# select * from g where 'CA' = any(group_array); group_name | group_array ------------+------------- west | {CA,WA} (1 row) This has worked since 7.4 or so ... regards, tom lane