Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 指定LIKE子句可以查看的位置_Mysql_Sql - Fatal编程技术网

Mysql 指定LIKE子句可以查看的位置

Mysql 指定LIKE子句可以查看的位置,mysql,sql,Mysql,Sql,我想使用LIKE子句来帮助实现搜索函数。 根据谁在网站上,用户将有一个名称,我想用这个名称指定在数据库中查找的位置 如果我有这样一张桌子: 名称:统计 username - score - id Erik - 15 - 1 John - 10 - 2 John - 12 - 3 Erik - 15 - 4 Philip - 13 - 5 Patrik - 15 - 6 Patrik - 17 - 7

我想使用LIKE子句来帮助实现搜索函数。 根据谁在网站上,用户将有一个名称,我想用这个名称指定在数据库中查找的位置

如果我有这样一张桌子: 名称:统计

username - score - id
Erik     - 15    - 1     
John     - 10    - 2
John     - 12    - 3
Erik     - 15    - 4
Philip   - 13    - 5
Patrik   - 15    - 6
Patrik   - 17    - 7
Patrik   - 8     - 8
Erik     - 9     - 9
现在发生的是,如果我搜索erik,它会返回erik和patrik,因为rik被放入用户名搜索,如果我输入15,它也会返回erik和patrik的值


有没有办法覆盖这一点,所以当我在WHERE username=erik中输入时,它只会在具有该username值的行上使用Like子句,而不会读取整个表,因为我的注释起作用了。。。以下是建议的解决方案


你需要在你想要的层次结构周围加上括号

SELECT username, score, id 
FROM stats 
WHERE (id LIKE'%".search."%'
OR username LIKE'%".search."%'
OR score LIKE'%".search."%')
AND username = 'Erik';

你需要在你想要的层次结构周围加上括号<代码>其中(id为“%”.search.”或用户名为“%”.search.”或分数为“%”.search.”和用户名为“%”Erik“
SELECT username, score, id 
FROM stats 
WHERE (id LIKE'%".search."%'
OR username LIKE'%".search."%'
OR score LIKE'%".search."%')
AND username = 'Erik';