MS SQLSERVER模糊查询like笔记

1.以什么开头,查找姓名以张开头的数据
select * from userinfo where name like '张%'    最快

2.以什么结尾,查找姓名以宇结尾的
select * from userinfo where name like '%宇'

3.包含什么字符,查找姓名包含明
select * from userinfo where name like '%明%'    最慢

4.不包含什么字符,查找姓名不包含明
select * from userinfo where name not like '%明%'

5.以什么开头和以什么结尾,查找用户表中name以j开头以k结尾的数据
select name from UserInfo where Name like 'j%k'

升级
通配符'_'    配合like使用

1、--查找第一个字符可以是任意字符,但是第二字符是三的数据
select * from userinfo where name like '_三%'

2、可以使用_查找固定的数据,字段中第二个字符是e,第四个是l,第六个是o的数据
select * from userinfo where name like '_e_l_o%';

-------------------------------------------------
在升级
通配符[]和^[]
通配符[]

在模式查询中可以利用"[]"来实现查询一定范围的数据.[]用于指定一定范围内的任何单个字符,包括两端数据
主要说这个通配符
示例:使用LIKE对同一字段(name)进行多值模糊查询
1、要查询用户表中,以李姓和张姓开头的数据,用一条SQL完成。
select * from UserInfo where Name like '[张李]%'
说明:[单个字符],以什么开头,这样就把张姓和李姓的用户都查询出来了。是不是很方便。

2、要查询用户表中,年龄尾数是7和8的数据
select * from UserInfo where Age like '%[78]'

3、要查询用户表中,姓名中包含'友'、'平'的数据
select * from UserInfo where Name like '%[友平]%'

-------------------------------------------------
通配符[^]

[^]用来查询不属于指定范围 ([a-f]) 或集合 ([abcdef]) 的任何单个字符。
如:select * from alluser
where username like 'M[^abc]%'
表示从表alluser中查询用户名以M开头,且第二个字符不是a,b,c信息.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值