SORU
4 Ocak 2010, PAZARTESİ


TSQL - string veya varsayılan değer tamsayı dönmek için Döküm

T-SQL bir şekilde bir nvarchar int için döküm ve varsayılan bir değer döndürmek veya eğer dönüşüm başarısız olursa NULL var mı?

CEVAP
4 Ocak 2010, PAZARTESİ


Evet :). Bunu deneyin:

DECLARE @text AS NVARCHAR(10)

SET @text = '100'
SELECT CASE WHEN ISNUMERIC(@text) = 1 THEN CAST(@text AS INT) ELSE NULL END
-- returns 100

SET @text = 'XXX'
SELECT CASE WHEN ISNUMERIC(@text) = 1 THEN CAST(@text AS INT) ELSE NULL END
-- returns NULL

ISNUMERIC() bazı sorunlar Fedor Hajdu tarafından işaret vardır.

$ (para birimi), , . (hem ayırıcı), - gibi dizeleri için true değerini döndürür.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Anthony Cumia

    Anthony Cumi

    5 EYLÜL 2006
  • Bogdan Gabriel

    Bogdan Gabri

    5 Aralık 2006
  • Leigh Momii

    Leigh Momii

    10 Mayıs 2006