--數(shù)據(jù)裝載
Create Table #T(Column1 varchar(20))
insert #T select '040011'
union all select '010021'
union all select '024綜合'
union all select '021不知道'
union all select '031不'
union all select '不3'
union all select '知道'
--1:求包含數(shù)字,且長度為6的集合(包含了中文)
select * from #T where Column1 like '%[0-9]%' and len(Column1)=6
--結(jié)果
Column1
--------------------
040011
010021
021不知道
(所影響的行數(shù)為 3 行)
--2:求包含中文,且長度為6的集合(包含了數(shù)字)
select * from #T where Column1 like '%[^0-9]%' and len(Column1)=6
--結(jié)果
Column1
--------------------
021不知道
(所影響的行數(shù)為 1 行)
--3:求包含數(shù)字,且長度為6的集合(不包含中文)
select * from #T where Column1 not like '%[^0-9]%' and len(Column1)=6
--結(jié)果
Column1
--------------------
040011
010021
(所影響的行數(shù)為 2 行)
--4 求所有記錄只用中文的記錄
select * from #T where Column1 not like '%[0-9]%'
--結(jié)果
Column1
--------------------
知道
(所影響的行數(shù)為 1 行)
--5.求所有記錄只有數(shù)字的記錄
select * from #T where Column1 not like '%[^0-9]%'
--結(jié)果
Column1
--------------------
040011
010021
(所影響的行數(shù)為 2 行)
或者
select * from #T where isnumeric(Column1)=1
--結(jié)果
Column1
--------------------
040011
010021
--6.查詢數(shù)據(jù)中那條記錄包含有中文
select case when Column1 like N'%[啊-座]%' then '包含中文' else '不包含中文' end
from #T
--結(jié)果
----------
不包含中文
不包含中文
包含中文
包含中文
包含中文
包含中文
包含中文
(所影響的行數(shù)為 7 行)
--7:只查詢數(shù)字字段值
select * from #Twhere patindex('%[^-^0-9]%',Column1 )=0
--結(jié)果
Column1
--------------------
040011
010021
(所影響的行數(shù)為 2 行)
--8:只查詢中文字段值
select * from #T where patindex('%[^-^啊-座]%',Column1)=0
--結(jié)果
Column1
--------------------
知道
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1505712