sql server 用正则表达式进行筛选;

复制代码
SELECT count(1) FROM [User]
--* # 必须包含数字
SELECT UserID,LoginPassword FROM [User] WHERE PATINDEX('%[0-9]%',LoginPassword) >=1
--* # 必须包含小写或大写字母
SELECT UserID,LoginPassword FROM [User] WHERE PATINDEX('%[a-zA-Z]%',LoginPassword) >=1
--* # 必须包含特殊符号
SELECT UserID,LoginPassword FROM[User] WHERE PATINDEX('%[^a-zA-Z0-9]%', LoginPassword) >=1

--查询 必须含数字,并且含字母,并且含特殊字符的数据,并且长度在8和30之间
SELECT UserID,LoginPassword FROM [User] WHERE PATINDEX('%[0-9]%',LoginPassword) >=1
and PATINDEX('%[a-zA-Z]%',LoginPassword)>=1
and PATINDEX('%[^a-zA-Z0-9]%', LoginPassword) >=1
and len(LoginPassword) >=8 and len(LoginPassword)<=30

--用notin 进行反查
select LoginPassword,* from [User] where UserID not in (SELECT UserID FROM [User] WHERE PATINDEX('%[0-9]%',LoginPassword) >=1
and PATINDEX('%[a-zA-Z]%',LoginPassword)>=1
and PATINDEX('%[^a-zA-Z0-9]%', LoginPassword) >=1
and PATINDEX('%[^a-zA-Z0-9]%', LoginPassword) >=1
and len(LoginPassword) >=8 and len(LoginPassword)<=30);
复制代码

 

posted @   黄金程序员  阅读(164)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示