日期:2014-05-17  浏览次数:20968 次

sql语句中的like语句中%和*的区别?
sysuser中有两个用户名,system和sysaudit,想通过like子句查询以sys开头的用户名,但是
select * from sysuser a where a.login_name like 'sys%';可以查出记录
select * from sysuser a where a.login_name like 'sys*';无法查出记录
这是为什么啊?
------解决方案--------------------
*是一个实际的字符,而%是通配符,两个不是一个概念

------解决方案--------------------
select * from sysuser a where a.login_name like 'sys*';
等于
select * from sysuser a where a.login_name = 'sys*';
------解决方案--------------------
sql中的通配符%才代表任意字符,*在sql中没有通配符的意思,虽然在像DOS环境之类下是代表任意字符的意思
------解决方案--------------------
ACCESS 里貌似用*