2015年4月20日新增:请同时阅读以下Hallie的回答
第一个,但微不足道。主要是因为它不必进行额外的
> 0比较。
mysql> SELECT BENCHMARK(100000000,LOCATE('foo','foobar'));+---------------------------------------------+| BENCHMARK(100000000,LOCATE('foo','foobar')) |+---------------------------------------------+| 0 |+---------------------------------------------+1 row in set (3.24 sec)mysql> SELECT BENCHMARK(100000000,LOCATE('foo','foobar') > 0);+-------------------------------------------------+| BENCHMARK(100000000,LOCATE('foo','foobar') > 0) |+-------------------------------------------------+| 0 |+-------------------------------------------------+1 row in set (4.63 sec)mysql> SELECT BENCHMARK(100000000,'foobar' LIKE '%foo%');+--------------------------------------------+| BENCHMARK(100000000,'foobar' LIKE '%foo%') |+--------------------------------------------+| 0 |+--------------------------------------------+1 row in set (4.28 sec)mysql> SELECT @@version;+----------------------+| @@version |+----------------------+| 5.1.36-community-log |+----------------------+1 row in set (0.01 sec)


