我问这个问题是因为我需要在我的PHP脚本中生成 SELECT 查询时知道此限制,并且此查询中的 WHERE 部分是在循环内生成的。 恰好看起来像这样
$query="SELECT field_names FROM table_name WHERE "; $condition="metadata like \"%$uol_metadata_arr[0]%\" "; for($i=1; $i<count($uol_metadata_arr); $i++){ $condition.=" OR metadata like \"%$uol_metadata_arr[$i]%\" "; } $query.=$condition; $result=mysql_query($query);
因此,这就是为什么我需要知道我的 $ query 字符串可以有多长的原因,因为数组 $ uol_metadata_arr 可以包含许多项目。
WHERE metadata IN ('value1', 'value2')
INSERT
LIKE '%string%'是性能杀手。这样的查询不能在该列上使用索引。 LIKE 'string%'另一方面,是可索引的
LIKE '%string%'
LIKE 'string%'