SQL 语句搜索字段内的所有字符

SQL statement search for all characters inside field

我有一个地址字段,地址的存储方式类似于 1111 地址信息,县

$stmt = $db->prepare('SELECT * FROM ' . Config::USER_TABLE . ' WHERE ' . Config::SEARCH_COLUMN . ' LIKE :query ORDER BY '.Config::SEARCH_COLUMN.' LIMIT ' . $start . ', ' . $items_per_page);
            $search_query = $query.'%';
            $stmt->bindParam(':query', $search_query, PDO::PARAM_STR);

目前我只能通过数字搜索该字段。我希望能够输入任何字母并能够进行搜索。有任何想法吗???谢谢

您附加到参数的 % 符号充当 SQL wildcard:

$search_query = $query.'%';

由于您只将它附加到参数的末尾,它只会搜索列值开头的字符串。

相反,还要在参数的开头添加一个:

$search_query = '%'.$query.'%';

这样,它会在任意位置寻找字符串。

使用 %search_criteria% 这样您就可以在两边使用通配符进行搜索