SQL查询使用逗号显示float作为分隔符而不是"。"

时间:2016-03-01 20:16:01

标签: sql sql-server casting floating-point

当我执行以下操作时:

    declare @x float = 1.5
    select @x

显示的结果为1,5,而不是1.5

但是当我print @x时,它会显示正确的结果:1.5"

当我使用float字段查询表时也会发生这种情况。

我使用的是sql server 2008 r2,服务器和数据库的排序规则是sql_latin1_cp1_cs_as。

查询浮点字段时是否有配置设置正确的分隔符? 我不想在我的所有问题中进行演员或替换。

1 个答案:

答案 0 :(得分:2)

绝对不要尝试使用REPLACE来解决这个问题。应尽可能在显示层中处理显示问题。如果你有一个浮点数,则将其视为浮点数,而不是字符串。

设置应来自计算机的区域设置。我相信有一个错误导致十进制数据类型不使用该设置(总是使用小数点的句点),但对于浮点数和金钱它应该使用区域设置。如何设置这些将取决于您的确切操作系统,但如果您在“开始”菜单中搜索类似的内容,"更改数字格式"或"区域设置"你应该希望能够找到它。