我一直在尝试找出如何使用MySQL进行查询的方法,该查询检查$haystack特定列中的值(字符串)是否包含某些数据(字符串$needle),如下所示:
$haystack
$needle
mysql_query(" SELECT * FROM `table` WHERE `column`.contains('{$needle}') ");
在PHP中,该函数称为substr($haystack, $needle),因此可能:
substr($haystack, $needle)
WHERE substr(`column`, '{$needle}')=1
实际上很简单:
mysql_query(" SELECT * FROM `table` WHERE `column` LIKE '%{$needle}%' ");
的%是用于设置任何字符(无,一个或多个)的通配符。请注意,这在非常大的数据集上可能会变慢,因此,如果数据库增长,则需要使用全文索引。
%