[英]Extract characters after character '_' in string
我在長度可變的sql server中有以下字符串
Declare @string Varchar(max) = 'abjrc_chdc_hyku_abv_ytr_DCD_HTR_TBF'
如何在此字符串的第四個“ _”之后選擇字符? (預期結果:ytr_DCD_HTR_TBF)
還有如何只選擇字符串的第四部分(結果:abv)
有任何想法嗎?
謝謝
如果將其用於多行創建功能會更好。 我為您的兩個問題准備了樣品:
Declare @string Varchar(max) = 'abjrc_chdc_hyku_abv_ytr_DCD_HTR_TBF'
Declare @NewString Varchar(max) = @string
Declare @Find4thPart Varchar(max) =''
DECLARE @Sep VARCHAR(10)='_'
DECLARE @Pos INT=4
WHILE @Pos>0
BEGIN
SET @NewString = SUBSTRING(@NewString, CHARINDEX(@Sep,@NewString)+1,100)
IF @Pos=2
SET @Find4thPart = SUBSTRING(@NewString,1, CHARINDEX(@Sep,@NewString)-1)
SET @Pos=@Pos-1
--SELECT @NewString
END
seLECT @NewString ,@Find4thPart
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.