这是一个简单的问题,我敢肯定,如果我说的没错,之前有人问过这个问题,但我找不到了......
所以......这是我的问题。
我有一个名字表:
+-----------+------------+
| ID | NAME |
+-----------+------------+
| 1 | BOB |
+-----------+------------+
| 2 | NANCY |
+-----------+------------+
| 3 | FRED |
+-----------+------------+
我想返回字符串中存在的行:
“Bob和Jane去商店会见Fred”将返回第1行和第3行。
在我脑子里像SELECT ID FROM names WHERE name IN('bob and jane went to the store to meet fred');
这样的东西显然不会。什么是适当的查询类型?
提前致谢。
答案 0 :(得分:1)
在MySQL中使用它
SELECT ID
FROM names
WHERE ' bob and jane went to the store to meet fred ' like concat('% ',name,' %')
+运算符会将两边的操作数转换为数字,这实际上不是你想要的。另外,你想让Boby为Fred和Frederick换回Fred吗?如果没有,则需要concat
中的空格以及传入的字符串以进行搜索。