gpt4 book ai didi

php - Mysql,无法使用 "LIKE"关键字搜索转义字符串字段

转载 作者:太空宇宙 更新时间:2023-11-03 11:10:11 25 4
gpt4 key购买 nike

当我查询同一个表时,考虑 Mysql 表中的一个字段( sample_field )作为“你的数据”

SELECT * FROM sample_table WHERE sample_field = "您的数据"

也喜欢

SELECT * FROM sample_table WHERE sample_field = "你的数据"

上述两个查询都返回 0 行,即使 sample_field 的值为“your\'s data”

经过长时间的搜索我才知道,我的搜索应该是

SELECT * FROM sample_table WHERE sample_field = "你\\\的数据"

效果很好。但是

SELECT * FROM sample_table WHERE sample_field LIKE “your\\\'s data”

不工作。因此,如果我想用引号搜索任何产品或类别(如“您的数据”),在站点搜索中我必须使用带有通配符模式('%')的 LIKE 关键字。

现在我找到了答案,如果我这样尝试

SELECT * FROM sample_table WHERE sample_field LIKE “your\\\\'s data”

http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html#operator_like 中给出,它工作正常。

但是请告诉我为什么它需要这么多的 4 个反斜杠来实现这​​一点?

提前致谢

最佳答案

如果您希望转义反斜杠成为文字反斜杠,则必须转义:

WHERE sample_field = "your\\'s data"

但实际上,首先在您的数据库中使用反斜杠是错误的,请改正它。

关于php - Mysql,无法使用 "LIKE"关键字搜索转义字符串字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9141260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com