香港马会开奖结果,六合彩资料 六开彩开奖现场直播 六合彩资料大全 地下六合彩 六合彩图库 六合彩图 香港六合彩网站 六合彩大全 香港六合彩图库 六合彩开 六合彩挂牌 香港六合彩挂牌 六合彩票 六合彩现场直播 六合彩玄机 香港六合彩公司 www.dq-ccg.com六合彩官网 香港六合彩特码 六合彩管家婆 六合彩走势图 六合彩结果 六合彩马报 香港六合彩现场直播 六合彩白小姐 白小姐六合彩 六合彩直播 六合彩特码资料 六合彩免费资料 六合彩曾道人 香港六合彩资料大全 六合彩开码结果 香港六合彩管家婆 六合彩综合资料 香港六合彩网址 六合彩彩图 香港六合彩图 六合彩信息 今晚六合彩开什么 六合彩开什么 六合彩图纸 香港六合彩特码资料 香港马会六合彩 六合彩图片 六合彩预测 香港六合彩网 香港六合彩直播 香港地下六合彩 香港六合彩官方网站 六合彩全年资料 六合彩脑筋急转弯 六合彩官方网站 六合彩查询 六合彩开码现场 六合彩报 香港六合彩论坛 六合彩天线宝宝 香港六合彩结果

Baidu

一聚教程网:一个值得你收藏的教程网站

SQL中字符串中包含字符的判断方法

时间:2017-10-01 17:12:00 编辑:猪哥 来源:转载

在sql中我判断包含字符串我们可使用很多方法,如like,replace,charindex函数都可实现我们要的功能,下面我来给各位介绍判断字符串包含字符串sql语句。

通过2个函数CHARINDEX和PATINDEX以及通配符的灵活使用

函数:CHARINDEX和PATINDEX

CHARINDEX:查某字符(串)是否包含在其他字符串中,返回字符串中指定表达式的起始位置。

PATINDEX:查某字符(串)是否包含在其他字符串中,返回指定表达式中某模式第一次出现的起始位置;如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。特殊:可以使用通配符!

例子:

1. 查询字符串中是否包含非数字字符

SELECT PATINDEX('%[^0-9]%', '1235X461')
SELECT PATINDEX('%[^0-9]%', '12350461')

2. 查询字符串中是否包含数字字符

SELECT PATINDEX('%[0-9]%', 'SUYLLGoO')
SELECT PATINDEX('%[0-9]%', 'SUYLLG0O')

3.函数判断字符串只包含数字

CREATE FUNCTION [dbo].fn_IsNumeric
(
@pString VARCHAR(8000)
)
RETURNS bit
WITH ENCRYPTION
AS
BEGIN
DECLARE @vJudge int
SET @vJudge = 0
SELECT @vJudge = 
CASE 
WHEN PATINDEX('%[0-9]%', LOWER(@pString)) > 0 THEN 0
WHEN PATINDEX('%[0-9]%', LOWER(@pString)) = 0 THEN 1
END
RETURN @vJudge
END

4.函数判断字符串只包含字母(忽略大小写)

CREATE FUNCTION [dbo].fn_IsAlpha
(
@pString VARCHAR(8000)
)
RETURNS bit
WITH ENCRYPTION
AS
BEGIN
DECLARE @vJudge int
SET @vJudge = 0
SELECT @vJudge = 
CASE 
WHEN PATINDEX('%[a-z]%', LOWER(@pString)) > 0 THEN 0
WHEN PATINDEX('%[a-z]%', LOWER(@pString)) = 0 THEN 1
END
RETURN @vJudge
END

5. 函数判断字符串不包含任何符号(包括空格)

CREATE FUNCTION [dbo].fn_IsAlphanumeric
(
@pString VARCHAR(8000)
)
RETURNS bit
WITH ENCRYPTION
AS
BEGIN
DECLARE @vJudge int
SET @vJudge = 0
SELECT @vJudge = 
CASE 
WHEN PATINDEX('%[^a-z0-9]%', LOWER(@pString)) > 0 THEN 0
WHEN PATINDEX('%[^a-z0-9]%', LOWER(@pString)) = 0 THEN 1
END
RETURN @vJudge
END

6. 函数判断字符串不包含任何符号(除空格外)

CREATE FUNCTION [dbo].fn_IsAlphanumericBlank
(
@pString VARCHAR(8000)
)
RETURNS bit
WITH ENCRYPTION
AS
BEGIN
DECLARE @vJudge int
SET @vJudge = 0
SELECT @vJudge = 
CASE 
WHEN PATINDEX('%[^a-z0-9 ]%', LOWER(@pString)) > 0 THEN 0
WHEN PATINDEX('%[^a-z0-9 ]%', LOWER(@pString)) = 0 THEN 1
END
RETURN @vJudge
END
-- 注意:[^a-z0-9 ]模式中最后有一个空格。

用charindex()——charindex(字符,字符串)>0 –>包含 查看一段话、一篇文章里面包含什么词

select ID,title,author from Article where CHARINDEX(title,@item)>0

7.用like——

select * from tablename where field1 like like ‘%key%'

8.使用replace()函数

declare @item nvarchar(100)
set @item='英语好难'; 
select ID,title,author from Article   
where LEN(REPLACE(@item,title,''))<len(@item);--根据替换后的长度进行判断>2、

文章评论

热门栏目

香港马会开奖结果,六合彩资料 六开彩开奖现场直播 六合彩资料大全 地下六合彩 六合彩图库 六合彩图 香港六合彩网站 六合彩大全 香港六合彩图库 六合彩开 六合彩挂牌 香港六合彩挂牌 六合彩票 六合彩现场直播 六合彩玄机 香港六合彩公司 六合彩官网 香港六合彩特码 六合彩管家婆 六合彩走势图 六合彩结果 六合彩马报 香港六合彩现场直播 六合彩白小姐 白小姐六合彩 www.dq-ccg.com六合彩直播 六合彩特码资料 六合彩免费资料 六合彩曾道人 香港六合彩资料大全 六合彩开码结果 香港六合彩管家婆 六合彩综合资料 香港六合彩网址 六合彩彩图 香港六合彩图 六合彩信息 今晚六合彩开什么 六合彩开什么 六合彩图纸 香港六合彩特码资料 香港马会六合彩 六合彩图片 六合彩预测 香港六合彩网 香港六合彩直播 香港地下六合彩 香港六合彩官方网站 六合彩全年资料 六合彩脑筋急转弯 六合彩官方网站 六合彩查询 六合彩开码现场 六合彩报 香港六合彩论坛 六合彩天线宝宝 香港六合彩结果