2016-10-19 1 views
0

Ich habe die folgende Tabelle mit (man-made) IDs.String-Manipulation mit SQL Server

ID  Name 
AB12345 John 
12346 Charles 
... 

Wie schreibe ich eine SELECT, die nur die Nummer Segment der ID-Spalte zurückgibt? Gefällt mir:

ID  Name 
12345 John 
12346 Charles 
... 
+0

eine skalare Funktion nur die Schleifen durch jedes Zeichen und verkettet Charakter String-Wert machen, wenn es zwischen ‚0 'UND' 9 ' – Cato

Antwort

1
SELECT SUBSTRING(string, PATINDEX('%[0-9]%', string), PATINDEX('%[0-9][^0-9]%', string + 't') - PATINDEX('%[0-9]%', 
        string) + 1) AS Number 
FROM table 

hier helfen