Asp.net 在SQL Server中仅获取浮点数的小数部分
我在SQL Server 2008中有以下号码:5.4564556Asp.net 在SQL Server中仅获取浮点数的小数部分,asp.net,sql-server,sql-server-2008,Asp.net,Sql Server,Sql Server 2008,我在SQL Server 2008中有以下号码:5.4564556 我只想从5.4564556中获得4564556 如果我能得到4564556中的4,那就更好了,这是小数部分的第一位 我怎么做 谢谢您可以这样尝试: SELECT (5.4564556 % 1) 您还可以使用: 就你而言: 5.456456-5=0.4564556 如果为负值,则可以使用 试试这个 select cast(5.4564556 % 1 * 10 as int) 要获取“.”后面的所有数字,可以使用(ab) 返回
我只想从5.4564556中获得4564556
如果我能得到4564556中的4,那就更好了,这是小数部分的第一位 我怎么做
谢谢您可以这样尝试:
SELECT (5.4564556 % 1)
您还可以使用:
就你而言:
5.456456-5=0.4564556
如果为负值,则可以使用
试试这个
select cast(5.4564556 % 1 * 10 as int)
要获取“.”后面的所有数字,可以使用(ab) 返回4564556
另请参阅您可以通过以下方式获得前四个小数部分:
select SUBSTRING (PARSENAME(5.4564556,1), 1, 4)
@ghanshyam.mirani注意PARSENAME返回一个
NVARCHAR(256)
。我也没有看到你问题的第二部分select LEFT(PARSENAME('5.456456',1),1)
只返回4。您可能需要将其转换回数字类型。这实际上是最好的答案,因为它在数学上是正确的,因此适用于所有浮点数集。
select cast(5.4564556 % 1 * 10 as int)
select PARSENAME(5.4564556,1)
select SUBSTRING (PARSENAME(5.4564556,1), 1, 4)