在列中查找子字符串的MySQL查询?

时间:2011-08-16 07:02:29

标签: php mysql sql

我正在使用此查询来查找用户结果。问题是它只能找到完全匹配。如何在User User列中检查字符串作为子字符串?

$result2 = mysql_query("SELECT * FROM `Users` WHERE MATCH (`User`) AGAINST ('$string') LIMIT 5");

由于

5 个答案:

答案 0 :(得分:4)

$result2 = mysql_query("SELECT * FROM `Users` WHERE `User` LIKE '%$string%' LIMIT 5");

使用LIKE运算符,就是它的用途。

此外,我希望您使用mysql_real_escape_string转义代码中较早的$string变量,以防范SQL Injection

答案 1 :(得分:1)

$result2 = mysql_query("SELECT * FROM `Users` WHERE `User`LIKE '%".$string."%' LIMIT 5");

答案 2 :(得分:1)

更改您的查询以使用LIKE关键字和% thingy-mabobber:

SELECT * FROM `Users` WHERE `User` LIKE '%$string%' LIMIT 5

答案 3 :(得分:0)

应该是这样的:

SELECT * FROM pet WHERE name LIKE '%fy';

您可以阅读更多here

答案 4 :(得分:0)

我认为您想使用LIKE运算符。

有些事情:

$result = mysql_query("SELECT * FROM `Users` WHERE `User` LIKE '%$string%' LIMIT 5");

http://www.w3schools.com/sql/sql_like.asp