--测试数据
declare @t table(数量 varchar(10))
insert @t select 1.20
union all select 1.30
union all select 1.1130
union all select 1.440
union all select 1.50
union all select 150
union all select 1.50100
union all select 1.5
select 数量=case charindex('.',数量) when 0 then 数量
else left(数量,len(数量)-patindex('%[^0]%.%','0'+reverse(数量))+2) end
from @t
--测试数据
declare @t table(数量 varchar(10))
insert @t select 1.20
union all select 1.30
union all select 1.1130
union all select 1.440
union all select 1.50
select 数量=cast(cast(数量 as float) as varchar) from @t