random1 Posted October 20, 2011 Share Posted October 20, 2011 Is there a way to use less SQL code in the code: SELECT `sid`, `sbody`, `stitle`, `sdescription` FROM `simple_search` WHERE `sbody` LIKE '%Survivor%' OR `stitle` LIKE '%Survivor%' OR `sdescription` LIKE '%Survivor%' ORDER BY `stitle` LIMIT 10; to something like: SELECT `sid`, `sbody`, `stitle`, `sdescription` FROM `simple_search` WHERE `sbody` OR `stitle` OR `sdescription` LIKE '%Survivor%' ORDER BY `stitle` LIMIT 10; Quote Link to comment Share on other sites More sharing options...
PFMaBiSmAd Posted October 20, 2011 Share Posted October 20, 2011 Nope. OR is a logical operator. It takes the boolean values on each side and or's them together. In your first query, `sbody` LIKE '%Survivor%' produces a true or false result that the OR operator uses with the other true/false results to determine if the WHERE clause is true. When you use `sbody` OR `stitle`, the value in `sbody` is treated as boolean true or false OR'ed with the value in `stitle` treated as a boolean true or false value. The resulting true or false value is then tested to see if it matches the LIKE '%Survivor%' term. Quote Link to comment Share on other sites More sharing options...
random1 Posted October 20, 2011 Author Share Posted October 20, 2011 Thanks for clearing this up for me Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.