sql >> Database teknologi >  >> RDS >> Sqlserver

Effektive ISNUMERIC()-erstatninger på SQL Server?

Du kan bruge T-SQL-funktionerne TRY_CAST() eller TRY_CONVERT(), hvis du kører SQL Server 2012, som Bacon Bits nævner i kommentarerne:

SELECT CASE WHEN TRY_CAST('foo' AS INT) IS NULL THEN 0 ELSE 1 END

SELECT CASE WHEN TRY_CAST(1 AS INT) IS NULL THEN 0 ELSE 1 END

Hvis du bruger SQL 2008 R2 eller ældre, skal du bruge en .NET CLR-funktion og ombryde System.Decimal.TryParse().



  1. mysql opdateringskolonne med værdi fra en anden tabel

  2. Hvordan tæller man alle rækker, når man bruger SELECT med LIMIT i MySQL-forespørgsel?

  3. Pgryglæns gendannelsestidsmål

  4. Få en liste over datoer mellem to datoer