我需要将字符串转换为例如'0.600 KG'为真。我尝试过转换和转换,但它会生成错误消息。这个例子如下所示。
select cast('0.600 KG' as real)
Error converting data type varchar to real.
请帮助解决问题。
答案 0 :(得分:1)
假设单位总是出现在字符串的末尾,您可以尝试使用适当的子字符串,例如
DECLARE @mass VARCHAR(50);
SET @mass = '0.600 KG';
SELECT CAST(SUBSTRING(@mass, 1, CHARINDEX(' ', @mass) - 1) AS real);
当然,单位的概念会丢失,你只需要一个真实的数字。