Rah*_*hra 1 sql t-sql sql-server casting decimal
这个问题可能会在许多线程上回答,但我无法找到特定于我的问题的答案.
问:我从API(以json格式)获取数据,其中所有列都以字符串形式出现并插入到一个表中,该表将所有列作为字符串并用作源表.
现在,我正在尝试将数据从该源转换为目标,并进行所有必要的转换以将数据插入目标表.但十进制(16,8)投射失败.
我在我的端调试问题,并发现在从API获取数据期间,将数据返回到json格式,以某种不寻常的格式转换值.
对于例如0.00007转换为7E-05,这发生在许多其他行上.
我知道我可以在API实现级别修复此问题.但我要求在SQL服务器端解决这个问题.所以我需要一个能将7E-05转换成0.00007的解决方案.
尝试类似的东西:
SELECT CAST(CAST(@t AS FLOAT) AS DECIMAL(16,8))
Run Code Online (Sandbox Code Playgroud)
结果是:
0.00007000
Run Code Online (Sandbox Code Playgroud)
CAST到a FLOAT,然后到a DECIMAL.