Hi. On Wed, Dec 12, 2001 at 02:39:07PM +0000, [EMAIL PROTECTED] wrote: > Hello > > I've got a problem selecting values that match an option from a SET column. > > My two columns are set up as follows: > > res_places SET('North','West','South') > res_places_re SET('Aber','Cardiff','Bangor') > > And I'm currently using the following MySQL query: > > SELECT * FROM gd_records WHERE (res_places & 3) AND (res_places_re > & 1); > > Which turns out very strange resutls. > > What I'm trying to do (in english) is to select records from the database > which matches option 3 in SET column res_places AND matches option 1 in SET > column res_places_re. > > For some reason my SQL query does not give me the desired results. I know > that a record matches both these criteria but yet this omits that record > when returning result. [...]
You used the wrong integer values. The n-th value is represented by power(n-1, 2), i.e. 1, 2, 4, 8, 16, and so on. SELECT * FROM gd_records WHERE (res_places & 4) AND (res_places_re & 1); should work. This is documented here: http://www.mysql.com/doc/S/E/SET.html Bye, Benjamin. -- [EMAIL PROTECTED] --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php