使用sql查询更改小数位

时间:2012-07-03 08:57:58

标签: sql string sql-server-2008 tsql sql-update

我需要在指定中更改HSS2.5X.25 to HSS2.500X.250

表格中designation is nvarchar的数据类型。

我试图像这样做..

    UPDATE  [AISC14-HSS-ROUND] 
    SET Designation = convert(DECIMAL(2,3),Designation);

这给出了一个像...的错误 由于数值数据类型的比例不匹配,因此无法执行此操作。

有没有办法转换这个..?

1 个答案:

答案 0 :(得分:0)

从这个开始

declare @n nvarchar(100)
set @n='HSS2.5X.25'

select part1+'.'+replace(part2,'X',replicate('0',4-len(part2))+'X')+'.'+left(part3+'000',3) from
(
select parsename(@n,3) as part1,parsename(@n,2) as part2 ,parsename(@n,1) as part3
) as t