Jump to content

Using less LIKE statements?


random1

Recommended Posts

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;

Link to comment
https://forums.phpfreaks.com/topic/249435-using-less-like-statements/
Share on other sites

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.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.