SQL Server 2008,将字符串转换为Real

时间:2018-03-15 11:29:02

标签: sql-server-2008

我需要将字符串转换为例如'0.600 KG'为真。我尝试过转换和转换,但它会生成错误消息。这个例子如下所示。

select cast('0.600 KG' as real)
Error converting data type varchar to real.

请帮助解决问题。

1 个答案:

答案 0 :(得分:1)

假设单位总是出现在字符串的末尾,您可以尝试使用适当的子字符串,例如

DECLARE @mass VARCHAR(50);
SET @mass = '0.600 KG';

SELECT CAST(SUBSTRING(@mass, 1, CHARINDEX(' ', @mass) - 1) AS real);

当然,单位的概念会丢失,你只需要一个真实的数字。

Demo