我有一個列名(fle),資料看起來像 /vr/gg/ercs/nyt_dte/segment/xml/subnetwor/=hhh/bvth=lhyt012 我需要提取 = 和 / 示例 hhh 之間的資料。
uj5u.com熱心網友回復:
您可以通過查找兩個字符的索引并使用substring函式來實作這一點。這是示例查詢:
declare @sampleString nvarchar(500) = '/vr/gg/ercs/nyt_dte/segment/xml/subnetwor/=hhh/bvth=lhyt012';
select
substring(@sampleString, OpeningCharIndex 1, ClosingCharIndex - OpeningCharIndex - 1)
from (
select
OpeningCharIndex,
CHARINDEX('/', @sampleString, OpeningCharIndex) ClosingCharIndex
from (
select
CHARINDEX('=', @sampleString) OpeningCharIndex
) a
) a
uj5u.com熱心網友回復:
使用您提供給我們的資料:
create table MyTable (
MyColumn varchar(100)
)
insert into MyTable values ('/vr/gg/ercs/nyt_dte/segment/xml/subnetwor/=hhh/bvth=lhyt012')
這個簡單的選擇就是你想要的:
SELECT SUBSTRING(
MyColumn,
charindex('=', MyColumn) 1,
CHARINDEX('/', substring(MyColumn, charindex('=', MyColumn) 2, LEN(MyColumn)))
)
from MyTable
SQL 小提琴:http ://sqlfiddle.com/#! 18/374677/3
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/341120.html
標籤:sql-server 数据库
