Я сделал функцию для получения коэффициента конверсии с возвратом денег, но почему сервер sql выполняет округление при выводе данных.
Я сделал скалярную функцию на SQL Server с возвратом денег на вывод
CREATE FUNCTION CurrencyRate(
-- Add the parameters for the function here
@FromCurr CHAR(3),
@ToCurr CHAR(3),
@Date_Tran DATE)
RETURNS MONEY
AS
BEGIN
-- Declare the return variable here
DECLARE @CurrencyRate MONEY;
-- the T-SQL statements to compute the return value here
SELECT @CurrencyRate = CAST(tc.scale AS MONEY)
FROM dbo.TCurrencyConverter tc
WHERE @Date_Tran BETWEEN tc.start_date AND tc.end_date
AND tc.currency_id_1 = @FromCurr
AND tc.currency_id_2 = @ToCurr;
-- Return the result of the function
RETURN @CurrencyRate;
END;
GO
Я ожидаю, что на выходе будет 0.000070550000000
, но на самом деле будет 0.0001
.