CREATE TABLE #tmpTbl (m VARCHAR(100))
INSERT INTO #tmpTbl VALUES
(',[Undergraduate1]')
,(',[Undergraduate10]')
,(',[Undergraduate11]')
;
GO
select LEFT(m, PATINDEX('%[0-9]%', m)-1) as a,
SUBSTRING(m, PATINDEX('%[0-9]%', m), LEN(m)) as b from #tmpTbl
drop table #tmpTbl
Salvo data la dichiarazione sopra tmptable e selezionare, il risultato sarà il seguente.selezionando la lettera corretta da una stringa
a | b
-------------------------------------------------------
,[Undergraduate | 1]
,[Undergraduate | 10]
,[Undergraduate | 11]
Tuttavia, voglio che sia così.
a | b
-------------------------------------------------------
,[Undergraduate | 1
,[Undergraduate | 10
,[Undergraduate | 11
Come posso ottenerlo? Ho provato un sacco di combinazione con PATINDEX, SINISTRA, DESTRA, SUBSTRING, LEN. ma non posso andare a destra del] nella colonna B
'SUBSTRING (m, PATINDEX ('% [0-9]%', m), LEN (m) - 1)'? –