Sophie, The sql like this: select * from tbl1 where (a, b) in ((1, 20), (2, 30), (3, 50)); works very well in PostgreSQL 8, Sincerely, Igor Katrayev, Data Systems Manager North Pacific Research Board 1007 West Third Avenue, Suite 100 Anchorage, AK 99501 Phone: 907-644-6700 Fax: 907-644-6780 igor.katrayev@xxxxxxxx -----Original Message----- From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Sophie Yang Sent: Tuesday, June 14, 2005 11:09 AM To: pgsql-general@xxxxxxxxxxxxxx Cc: pgsql-novice@xxxxxxxxxxxxxx; pgsql-sql@xxxxxxxxxxxxxx Subject: Set Membership operator -- test group membership Say I have a table tbl1 with two columns: tbl1(a integer, b integer, c integer) I want to select the rows in which a and b are members of a list of integer pairs. The SQL in my mind is something like: select * from tbl1 where (a, b) in ((1, 20), (2, 30), (3, 50)); I know the SQL above does not work in PostgreSQL. I wonder what is the proper way to use in PostgreSQL. I tried "select * from tbl1 where (a, b) in ('{{1, 20}, {2, 30}, {3, 50}}')", and it doesn't work either. Thanks! Sophie __________________________________ Yahoo! Mail Mobile Take Yahoo! Mail with you! Check email on your mobile phone. http://mobile.yahoo.com/learn/mail ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend