查询跳过第一个定界符和 select 第二个定界符 SQL
Query to Skip the first Delimiter and select the second Delimiter In SQL
我正在尝试 运行 查询
,replace(b.[X.Logs],' ','.') as 'logs'
,CT2 as
(
Select *
, CHARINDEX('Diagnostics',[logs]) as 'DiagBGN1'
, CHARINDEX('.',[logs],CHARINDEX('Diagnostics',[logs])) as 'DiagEND1'
From CT1
)
,CT3 as
(
Select *
,SUBSTRING([logs],[EPSABGN1]+1,[EPSAEND1]-[EPSABGN1]-1) as 'EPSA_CODE'
From CT2
)
我希望代码跳过第一个 .
和 select 下一个 .
作为分隔符。
您可以像下面这样使用它:
declare @S varchar(200) = 'Diagnostics.Passed.hardware';
select substring(@s, charindex('.', @S)+1, len(@s));
CharIndex 将提供第一个 '.' 的 'index'。然后用它从字符串中获取子字符串。这将 'ignore' 字符串中的单词 "Diagnostics."。
我正在尝试 运行 查询
,replace(b.[X.Logs],' ','.') as 'logs'
,CT2 as
(
Select *
, CHARINDEX('Diagnostics',[logs]) as 'DiagBGN1'
, CHARINDEX('.',[logs],CHARINDEX('Diagnostics',[logs])) as 'DiagEND1'
From CT1
)
,CT3 as
(
Select *
,SUBSTRING([logs],[EPSABGN1]+1,[EPSAEND1]-[EPSABGN1]-1) as 'EPSA_CODE'
From CT2
)
我希望代码跳过第一个 .
和 select 下一个 .
作为分隔符。
您可以像下面这样使用它:
declare @S varchar(200) = 'Diagnostics.Passed.hardware';
select substring(@s, charindex('.', @S)+1, len(@s));
CharIndex 将提供第一个 '.' 的 'index'。然后用它从字符串中获取子字符串。这将 'ignore' 字符串中的单词 "Diagnostics."。