2017-01-05 15 views
1

私はグーグルでグーグルで、もう少しグーグルでは...しかし、私はこれを理解することができません。SQL Server PatIndexドットとハイフンはどういう意味ですか? (PatIndex( '%[0-9 .-]%')

そして、ハイフンは、次のSQL Serverコマンドで意味...

PATINDEX( '%[0-9 .-]%' ここで

仕事でコードがある...

(9後)
declare @tv_raw table(recnum int identity(1, 1) primary key, rawdata nvarchar(max)) 
insert into @tv_raw(rawdata) values('Washington 40 New Orleans 32') 
insert into @tv_raw(rawdata) values('St. Louis 23 Detroit 27')  

select SubString(rawdata, PatIndex('%[0-9.-]%', rawdata)+3,PatIndex('%[0-9.-]%', rawdata)) 
from @tv_raw 
+0

ドットとハイフンは、[]で囲まれたリストの他の検索条件にすぎません。したがって0〜9の任意の数字、つまり0,1,2 ...、8,9またはドットまたはハイフンです。 – scsimon

答えて

1

patindexが返す..

パターンが見つからないのであれば、それは最初の位置を返す

すべての有効なテキストと文字データ型で、指定された式、またはゼロでパターンの最初のオカレンスの開始位置を返します。

:パターンで見つかった任意の文字...以下の変形例

declare @tv_raw table(recnum int identity(1, 1) primary key, rawdata nvarchar(max)) 
insert into @tv_raw(rawdata) values('Wa0shington- 40 New Orleans 32') 
insert into @tv_raw(rawdata) values('St.- Louis 23 Detroit 27')  

select PatIndex('%[0-9-]%', rawdata) 
from @tv_raw 

出力を参照してください3

関連する問題