dudeldoedel
Goto Top

Abfrage SQL

Hallo zusammen,

kann man das in einer SQL Abfrage erreichen ???

Feldwert lautet:
{"565":{"textinput":{"comment":"1400"}}}

als Ergebnis soll ausgelesen werden :
1400

sonst nichts. Der Rest soll ausgeblendet werden ....
Der Bereich vor und nach 1400 ist immer identisch, bis auf die vordere Zahl 565, die ändert sich auch immer, soll aber auch nicht ausgelesen werden.


Hat jemand eine Idee ???

Danke ...

dudeldoedel

Content-ID: 272985

Url: https://administrator.de/contentid/272985

Ausgedruckt am: 19.11.2024 um 15:11 Uhr

Clijsters
Clijsters 26.05.2015 aktualisiert um 23:09:59 Uhr
Goto Top
Hallo dudeldoedel,

Kurz die Suchmaschine des vertrauens befragt:
stackoverflow.com/questions/10581772/how-to-split-a-comma-separated-value-to-columns

Beste Grüße
Dominique
maretz
maretz 27.05.2015 um 06:43:35 Uhr
Goto Top
Wenn du so allgemein fragst - klar:

select substring(feldname,15,4) from tabellenname

wobei ich jetzt einfach mal behaupte das zeichen 15 die 1 von der 1400 ist (ich glaub das liegt höher, aber keine Lust zu zählen).

Denn leider wird nicht klar ob es sich um verschiedene Felder in der DB handelt (sieht für mich so aus), um was für eine DB es sich handelt,...
ukulele-7
Lösung ukulele-7 27.05.2015, aktualisiert am 28.05.2015 um 11:15:22 Uhr
Goto Top
Da ich nicht weiß ob 565 auch mal zwei oder vierstellig wird würde ich vom String-Ende ausgehend vier Zeichen weg nehmen und dann bis " alles ausschneiden.
DECLARE	@i VARCHAR(40)
SET		@i = '{"565":{"textinput":{"comment":"1400"}}}'  

SELECT	right(left(@i,len(@i)-4),charindex('"',reverse(left(@i,len(@i)-4)))-1)