从数据库中选择字符串时遇到问题。问题是如果您的行中有McDonald's并且如果您使用字符串mcdonalds进行搜索,它将找不到任何结果。有什么建议吗?
我忘了说我在用LIKE这个句子。

最佳答案

如果您的搜索要求是忽略某些字符,则可以在搜索过程中用空格将其删除。
这个答案解决了你的问题:

SELECT *
FROM restaurants
WHERE replace(name, '''', '') like '%mcdonalds%'; -- This will match "McDonald's"

仅供参考,单引号文本(replace)被写为双引号('),因此要将单引号指定为''的参数,您需要在一行(replace)中使用四个引号-每端两个,中间的双引号用于实际引号。

10-06 13:28
查看更多