0
在一個名爲TRY
我有具有價值abc:30|def:g h i|j:k|l:m|n:o|p: |q: 0.25 |r:0.47|s:t u
得到一個數值一個字符串
我要取的數值r:
後給出的例子具有價值[R記錄的列ABC
表:0.47但它也可以有一個值123456.012596363
我不確定使用patindex。任何人都可以請幫忙。
非常感謝
在一個名爲TRY
我有具有價值abc:30|def:g h i|j:k|l:m|n:o|p: |q: 0.25 |r:0.47|s:t u
得到一個數值一個字符串
我要取的數值r:
後給出的例子具有價值[R記錄的列ABC
表:0.47但它也可以有一個值123456.012596363
我不確定使用patindex。任何人都可以請幫忙。
非常感謝
試試這個...........
declare @abc nvarchar(100) = 'abc:30|def:g h i|j:k|l:m|n:o|p: |q: 0.25 |r:0.47|s:t u'
select
substring(substring(@abc,charindex('r:',@abc) + 2 ,len(@abc)),
1,
charindex('|',substring(@abc,charindex('r:',@abc) + 2,len(@abc))) - 1)
使用這種查詢你的表
select
substring(substring(abc,charindex('r:',abc) + 2 ,len(abc)),
1,
charindex('|',substring(abc,charindex('r:',abc) + 2,len(abc))) - 1)
from TRY
-----最後的嘗試
select case when charindex('r:',abc) = 0 then abc else
substring(substring(abc,charindex('r:',abc) + 2 ,len(abc)),
1,
charindex('|',substring(abc,charindex('r:',abc) + 2,len(abc))) - 1) end
from TRY
嗨Kishore,感謝您花時間回答這個問題。我收到此錯誤 - 消息537,級別16,狀態2,行1 傳遞給LEFT或SUBSTRING函數的長度參數無效。如果可能的話請幫忙。謝謝 – Proud2bOZ
Hi @ Proud2bOZ請嘗試我上面發佈的最終查詢。 – Kishore
嗨Kishore,非常感謝對此提供幫助。我真的很感謝你投入的時間和精力。Cheers Mate – Proud2bOZ