値が null の場合、この変換をどのように処理すれば、「データ型 varchar から数値への変換エラー」というエラーが発生しなくなります。
convert(numeric(19,2), mdmaster.check_no)as checkNbr,
ありがとう
使用できますISNULL
:
convert(numeric(19,2), ISNULL(mdmaster.check_no, 0))as checkNbr,
これにより、任意のNULL
値が に変換され0.00
ます。
null の場合は 0.00 を返す ISNUMERIC を使用できます
DECLARE @t VARCHAR(50);
SELECT convert(numeric(19,2), ISNUMERIC (@t))as checkNbr
または、ms sql サーバーの要件に一致する場合は、以下に示すようにアプローチを使用できます
SELECT
CASE
WHEN Field NOT LIKE '%[^0-9]%'
THEN CAST(Field AS INT)
ELSE NULL
END