【发布时间】:2016-03-26 06:14:06
【问题描述】:
返回45.2478
SELECT
CAST(
geography::STPointFromText( 'POINT(-81.2545 44.1244)', 4326 ).Lat + 1.12342342
AS VARCHAR(50)
)
返回4.524782342440000e+001
SELECT
CONVERT(
VARCHAR(50),
geography::STPointFromText( 'POINT(-81.2545 44.1244)' , 4326 ).Lat + 1.1234234244,
2
)
根据this page 上的“截断和舍入结果”部分,看起来 CAST 不应该截断浮点数,但在这种情况下它正在这样做。
【问题讨论】:
-
您的示例使用的文字类型为
decimal而不是float。 -
@MartinSmith 非常感谢,这让我发疯了,我删除了文字十进制示例,它现在只是浮动。假设 float+decimal = float
标签: sql sql-server sql-server-2016