-
desc (15.12.08 08:54) [0]Создал функцию, перевода типа одного в другой но при переводе в типnvarchar
происходит округление. Как быть ? Необходимо перевисти значение один к одному (без всеких округлений обрезаний и т.д.) только вnvarchar
...ALTER FUNCTION [dbo].[fnFloatToStr](@Flt float)
RETURNS nvarchar(64)
AS
BEGIN
RETURN CAST(@Flt AS nvarchar(64));
ENDSELECT [dbo].[fnFloatToStr](245555.9534) fn
получаем: 245556 -
desc (15.12.08 08:55) [1]да...
ms sql server 2005 -
Вариант (15.12.08 10:22) [2]Как вариант можно
-------------------------------
declare @Flt float;
set @Flt=245555.9534666;
--------------------------------------
--CAST
select CAST( cast(@Flt as numeric(38,10)) AS nvarchar(64));
или еще проще и короче
--STR
select STR(@Flt,38,10);