結果を科学表記法で取得せずに、10 進数値を float にキャストするにはどうすればよいですか?
たとえば、値が0.000050
10 進数の場合、float にキャストすると、5E-05
を見たいのですが0.00005
結果を科学表記法で取得せずに、10 進数値を float にキャストするにはどうすればよいですか?
たとえば、値が0.000050
10 進数の場合、float にキャストすると、5E-05
を見たいのですが0.00005
ALTER FUNCTION [dbo].[fnExpStringToDecimal]
(
@Number AS varchar(50)
) Returns Decimal(18,7)
BEGIN
RETURN (SELECT IIF(CHARINDEX ('E', @Number)> 0,CAST(SUBSTRING(@Number, 1, CHARINDEX ('E', @Number)-1)AS DECIMAL(18,7)) * POWER( 10.0000000,CAST(SUBSTRING(@Number, CHARINDEX ('E', @Number)+1, LEN(@Number)) AS DECIMAL(18,7))), @Number))
END