日期:2014-05-16  浏览次数:20647 次

mysql like有问题
select * from `D_Topics` topic0_ where topic0_.createrID like '1%';
select * from `D_Topics` topic0_ where topic0_.createrID like '[10]%';
第一条能输出,第二条不行。。。这是怎么回事啊

------解决方案--------------------
一条记录已模糊查询1开头记录
第二条记录 模糊查询已[10]开头的没有记录。
------解决方案--------------------
mysql并没有like '[10]%';


用regexp '[0-9]*';
------解决方案--------------------
如果想用正则的话,请使用 rlike 关键字。但这时候 % 号就没有特殊意义了,所以你那个 "[10]%" 看起来怪怪的:
- 若是正则的话,用 rlike, % 就是字面字符
- 若是sql的通配符的话,用 like, [10]就是字面字符
------解决方案--------------------
MYSQL中使用REGEXP