immer Namen Wert aus einer Zeichenfolge mit SQL
-
29-09-2019 - |
Frage
Ich bearbeiten nur die Frage es deutlicher zu machen .. please help
Ich bin mit SQL Server 2008
Ich habe eine Spalte, die die folgenden Zeichenketten enthalten ..
http://www.microsoft.com?abc=1234&def=567&ghi=891
http://www.microsoft.com?abc=4587&def=567&ghi=891
http://www.microsoft.com?abc=2478&def=567&ghi=891
http://www.microsoft.com?abc=9874&def=567&ghi=891
http://www.microsoft.com?abc=5412&def=567&ghi=891
In der folgenden Zeichenkette, wie kann ich Wert von „abc“ mit TSQL?
sollte das Ergebnis sein ...
abc
1234
4587
2478
9874
5412
Bitte lassen Sie mich wissen.
Dank
Lösung
declare @x varchar(100)
set @x = 'http://www.microsoft.com?abc=1234&def=567&ghi=891'
declare @param varchar(100)
set @param = 'abc='
select SUBSTRING(@x, charindex(@param, @x)+LEN(@param), CHARINDEX('&', @x+'&', charindex(@param, @x)) - CHARINDEX(@param, @x)-LEN(@param)) as abc
set @param = 'def='
select SUBSTRING(@x, charindex(@param, @x)+LEN(@param), CHARINDEX('&', @x+'&', charindex(@param, @x)) - CHARINDEX(@param, @x)-LEN(@param)) as def
set @param = 'ghi='
select SUBSTRING(@x, charindex(@param, @x)+LEN(@param), CHARINDEX('&', @x+'&', charindex(@param, @x)) - CHARINDEX(@param, @x)-LEN(@param)) as ghi
Andere Tipps
können Sie die Teilzeichenmethode auf T-SQL verwenden, aber Sie würden die Start- und Längenparameter müssen wissen. Ich meine, wenn die Zeichenfolge-Wert ändert, wird es nicht funktionieren.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow