在 MySQL 中使用 strpos


using strpos in mysql?

我不确定这是否是使用 mysql 的正确功能,但我想知道是否有人可以帮助我解决我遇到的这个问题

前任:

我有这些值的 mysql

id     name
1      house_home
2      movie_film
3      restaurant_food

因此,如果我试图找到movie,它应该得到movie_film的值。

strpos 函数是这种情况的正确函数吗?还是有别的办法?

$string = 'movie';
$query = $db->prepare("SELECT * FROM values WHERE name = ?";
$query->execute(array($string));
while($row = $query->fetch(PDO::FETCH_ASSOC)){
    echo $row['name']; //this should output movie_film
}

提前感谢您的帮助!

使用 strpos,您将获得该字符串的位置,然后修剪所需的长度

使用LOCATE('substring', 'mainstring')功能

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_locate

您可以在 SQL 中使用LIKE运算符。

SELECT * FROM values WHERE name LIKE '%?%'

请尝试LIKE operator

SELECT * from values where name LIKE '%?%';