MySQL转义字符问题

标签 mysql mysql-5.5

当我试图解决 This Question. 时我在表中创建了虚拟记录

create table mytable(data CHAR(30));

INSERT INTO mytable VALUES('d\\one'),('d\\two'),('d\\three');

SELECT * FROM mytable;
+---------+
| data    |
+---------+
| d\one   |
| d\two   |
| d\three |
+---------+
3 rows in set (0.00 sec)

现在当我选择记录时,我没有得到任何结果,我尝试了很多类似的组合但没有运气。

例如:

SELECT * FROM mytable WHERE data LIKE "d\\%";
Empty set (0.00 sec)


SELECT * FROM mytable WHERE data LIKE 'd\\%';
Empty set (0.00 sec)

最佳答案

使用三重斜线:

SELECT * FROM mytable WHERE data LIKE "d\\\%"

关于MySQL转义字符问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21903887/

相关文章:

MySQL my.ini 位置

Mysql 仅返回列中的模式匹配

mysql - Sql 查询 对于我的案例

php - 从数据库中检索下拉选项

mysql - 为什么我从这个查询中得到空值

php - 使用 json 和 cURL 访问禁止的错误 403 Web 服务

sql - 测试 MySQL 表中是否存在行的最佳方法

mysql - 子查询返回超过 1 行

mysql - 升级到 MariaDB 5.5 后,连接在一段时间不活动后会被删除

php - 当Select列多于Insert列时如何处理查询?