mssql sqlserver like匹配数据列是否全部由英文字母组成


摘要:
今天收到一学生提问,如何验证一张数据表中,列值全部由英文字母组成,
收到这个提问,我立即想到了 一个like的正则匹配 [a-zA-Z],
由于不知道列的数据长度,所以我们需要转变思路,匹配一个列中的值不属于英文字母的方式来验证这个列的数值是否全部为英文,
具体实现方法如下所示:


create table A(note varchar(30))
go 
insert into A values('readyGo')
insert into A values('ceshi.')
insert into A values('英文字母')
insert into A values('hundao')
insert into A values('78&*&') 
go
select * from A where note not  like '%[^a-zA-Z]%'
go
drop table A
mssql sqlserver like匹配数据列是否全部由英文字母组成

mssql sqlserver like匹配数据列是否全部由英文字母组成