If you want to be a bit more generic you could do something like this: # store the desired OS ID into a variable SELECT @desired_id := os_id FROM os_table WHERE os_name = "win nt";
# now find the solutions that match with the os_id SELECT o.os_id, o.os_name, s.os_code, s.solution FROM os_table o, solution_table s WHERE (o.os_id & s.os_code) = @desired_id; +-------+---------+---------+---------------------+ | os_id | os_name | os_code | solution | +-------+---------+---------+---------------------+ | 8 | win nt | 24 | nt and 2000 dun fix | | 8 | win nt | 255 | no-pay contact CSRs | +-------+---------+---------+---------------------+ 2 rows in set (0.01 sec) -- Jeff Shapiro | Starlight Spectacular Ride Webmaster | June 21st,2003 at midnight www.starlightspectacular.org | Benefiting the Trails & Open Space Coalition On 4/2/03 at 15:40, John Hoskins spoke thusly: >This one worked. Thank you. > >On Wed, 2 Apr 2003, Michael Shulman wrote: > >> John, >> >> Looks like I'm first with the wrong answer again. >> >> This time for sure. >> >> How about: >> AND os.os_id & 8 = 8 >> >> Where 8 is the value that you're looking for. >> >> -ms >> >> >> >> >> -----Original Message----- >> From: Michael Shulman [mailto:[EMAIL PROTECTED] >> Sent: Wednesday, April 02, 2003 11:38 AM >> To: 'John Hoskins' >> Cc: '[EMAIL PROTECTED]' >> Subject: RE: select help >> >> No problem. Use mod(m,n). To get the records where the "8" bit is set, use >> and mod(os.os_id,8) = 0; >> >> mysql> use test >> Database changed >> mysql> create table t (i integer); >> Query OK, 0 rows affected (0.18 sec) >> >> mysql> insert into t values (1); >> Query OK, 1 row affected (0.10 sec) >> >> mysql> insert into t values (2); >> Query OK, 1 row affected (0.00 sec) >> >> <rows omitted for brevity, values 3..7 inserted> >> >> mysql> insert into t values (8); >> Query OK, 1 row affected (0.00 sec) >> >> mysql> select * from t where mod(i,2) = 0; >> +------+ >> | i | >> +------+ >> | 2 | >> | 4 | >> | 6 | >> | 8 | >> +------+ >> 4 rows in set (0.00 sec) >> >> mysql> select * from t where mod(i,4) = 0; >> +------+ >> | i | >> +------+ >> | 4 | >> | 8 | >> +------+ >> 2 rows in set (0.00 sec) >> >> -----Original Message----- >> From: John Hoskins [mailto:[EMAIL PROTECTED] >> Sent: Wednesday, April 02, 2003 11:34 AM >> To: Michael Shulman >> Cc: [EMAIL PROTECTED] >> Subject: RE: select help >> >> Not quite that simple, Plese read the last of the original post. I need >> all solutions that have the 4th bit on, so 8,15,24,31...255 all have the >> 4th bit in combination with other bits. >> >> On Wed, 2 Apr 2003, Michael Shulman wrote: >> >> > mysql> select solution >> > -> from os_table os, solutions_table solutions >> > -> where os.os_id = solutions.os_code >> > -> and os.os_id = 8; >> > >> > -ms >> > >> > >> > -----Original Message----- >> > From: John Hoskins [mailto:[EMAIL PROTECTED] >> > Sent: Wednesday, April 02, 2003 10:41 AM >> > To: [EMAIL PROTECTED] >> > Subject: select help >> > >> > >> > Please consider the following two tables: >> > >> > mysql> select * from os_table; >> > +-------+----------+ >> > | os_id | os_name | >> > +-------+----------+ >> > | 1 | mac os | >> > | 2 | win 95 | >> > | 4 | win 98 | >> > | 8 | win nt | >> > | 16 | win 2000 | >> > | 32 | win me | >> > | 64 | xp home | >> > | 128 | xp pro | >> > +-------+----------+ >> > >> > mysql> select * from solution_table; >> > +---------+---------------------+ >> > | os_code | solution | >> > +---------+---------------------+ >> > | 1 | mac fix | >> > | 24 | nt and 2000 dun fix | >> > | 255 | no-pay contact CSRs | >> > +---------+---------------------+ >> > >> > >> > What I'd like to do is select all solutions that >> > applys to NT, os_id.os_table=8 >> > >> > so it should return solution 24 and 255. Since these two solutions have >> > the NT os bit turned on. >> > >> > Thank You >> > John H. >> > >> > >> > >> > >> >> >> >> > > >-- >MySQL General Mailing List >For list archives: http://lists.mysql.com/mysql >To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED] > -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]