在 SQL Server 中将科学记数法转换回数字

新手上路,请多包涵

我在 Excel 中有数据

7540006
7540447

但是当我将数据导入 SQL Server 时,它被保存为

7.54001e+006
7.54045e+006

所以现在当我尝试将它转换回原始状态时,它并没有得到正确的值。

我尝试了以下转换查询

declare @a varchar(40)
set @a = '7.54001e+006'

declare @b decimal(27, 12)

SELECT @b = CONVERT(REAL, @a, 2)

SELECT LTRIM(RTRIM(str(@a))), LTRIM(STR(@a))

SELECT CAST('7.54001e+006' as REAL)

我得到的输出是所有方法的原始值加3,即

7540010
7540050

如何将其转换回原始状态?

原文由 Mahajan344 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
1 个回答

当您将保存在数据库中时,将值转换为 toString() 就像

Convert.toString(7540006)

然后它将原始值保存在数据库中。

原文由 developer 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏