在SQL Server中,你可以使用CAST或CONVERT函数将VARCHAR类型的值转换为DECIMAL类型。
以下是使用CAST函数将VARCHAR类型转换为DECIMAL类型的示例:
SELECT CAST('123.45' AS DECIMAL(10, 2)) AS MyDecimal;
此示例将VARCHAR类型的字符串'123.45'转换为DECIMAL类型,并将结果存储在名为"MyDecimal"的列中。DECIMAL(10,2)指定了DECIMAL类型的总位数为10位,小数点后的位数为2位。
以下是使用CONVERT函数将VARCHAR类型转换为DECIMAL类型的示例:
SELECT CONVERT(DECIMAL(10, 2), '123.45') AS MyDecimal;
此示例将VARCHAR类型的字符串'123.45'转换为DECIMAL类型,并将结果存储在名为"MyDecimal"的列中。DECIMAL(10,2)指定了DECIMAL类型的总位数为10位,小数点后的位数为2位。
无论是使用CAST还是CONVERT函数,都需要指定目标DECIMAL类型的总位数和小数点后的位数。如果转换失败,会抛出异常,你可以使用TRY_CONVERT或TRY_CAST函数来避免异常的抛出,这样如果转换失败,会返回NULL值。