8

結果を科学表記法で取得せずに、10 進数値を float にキャストするにはどうすればよいですか?

たとえば、値が0.00005010 進数の場合、float にキャストすると、5E-05

を見たいのですが0.00005

4

3 に答える 3

0
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
于 2016-03-09T12:36:02.690 に答える