--小梁
CREATE FUNCTION dbo.trimNumericZero(@val numeric(10,3))
RETURNS VARCHAR(20)
AS
BEGIN
RETURN LEFT(@val,LEN(@val)-PATINDEX('%[^0]%.%',REVERSE(@val))+1)
END
GO
DECLARE @t TABLE(id int,val numeric(10,3))
INSERT @t VALUES(1,3.110)
INSERT @t VALUES(2,3.500)
INSERT @t VALUES(3,3.111)
INSERT @t VALUES(4,3.050)
INSERT @t VALUES(5,3.301)
SELECT
id,
val=dbo.trimNumericZero(val)
FROM @t
/*
id val
----------- --------------------
1 3.11
2 3.5
3 3.111
4 3.05
5 3.301
(5 行受影响)
*/
GO
DROP FUNCTION dbo.trimNumericZero