Dotan Cohen <dotancohen@xxxxxxxxx> wrote: >I have a MySQL database table with about 10,000 rows. If I want to >query for 50 specific users (so no LIMIT ORDER BY) then I seem to have >these choices: > >1) SELECT * FROM table >This will pull in all 10,000 rows, not nice! > >2) foreach ($user as $u) { mysql_query("SELECT * FROM table WHERE >userID=".$u); } >This will lead to 50 queries, again not nice! (maybe worse) > >3) foreach ($user as $u) { $whereClause+=" OR userID=".$u; } >This makes a huge SQL query. However, this is the method that I'm using >now. > >Is there some sort of array that can be passed in the WHERE clause, >containing all the userID's that I am interested in? > >Thanks! > >-- >Dotan Cohen > >http://gibberish.co.il >http://what-is-what.com > >-- >PHP General Mailing List (http://www.php.net/) >To unsubscribe, visit: http://www.php.net/unsub.php SELECT * FROM table WHERE userID IN (1,2,3,4,5,etc) Much smaller than what you proposed in #3, and easier to make if your user is list is already an array. Thanks, Ash http://www.ashleysheridan.co.uk -- Sent from my Android phone with K-9 Mail. Please excuse my brevity. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php