Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Try_Convert für SQL Server 2008 R2

Wenn Sie XML in SQL Server verwenden, können Sie es versuchen um in einen Datentyp umzuwandeln und Nullwerte zu erhalten, wenn die Umwandlung fehlschlägt.

declare @T table
(
  Col varchar(50)
)

insert into @T values
('1'),
('1.1'),
('1,1'),
('1a')

select cast('' as xml).value('sql:column("Col") cast as xs:decimal ?', 
                             'decimal(28,10)') as Col
from @T

Ergebnis:

Col
-------------
1.0000000000
1.1000000000
NULL
NULL