在 NO_BACKSLASH_ESCAPES 模式下转义特殊字符
当 MySQL 中启用 NO_BACKSLASH_ESCAPES 选项时,转义文字“%”或“的标准方法_”使用“%”不起作用。这在执行 LIKE 查询时提出了挑战。
解决方案 1:使用转义字符
在 NO_BACKSLASH_ESCAPES 模式下,您可以使用转义字符来保护特殊字符,例如 " %”。转义字符在 LIKE 查询中指定在 escape 关键字后面。
例如:
select * from mytable where mycol like '5\% off' escape '\';
在此查询中,“”用作转义字符,因此“%”代表文字“%”字符。
解决方案 2:使用不同的特殊字符字符
如果您无法使用反斜杠作为转义字符,您可以选择不同的特殊字符并使用它。例如:
select * from mytable where mycol like '5|% off' escape '|';
这里,“|”用作转义字符,因此“5|% off”表示带有文字“%”字符的字符串。
以上是如何在MySQL的NO_BACKSLASH_ESCAPES模式下转义特殊字符?的详细内容。更多信息请关注PHP中文网其他相关文章!