标签: sql-server casting
以下两个查询都会给我相同的结果,我已经看到过去使用这两种技术来确保返回decimal数据类型。
decimal
select CAST(5 as decimal(18,2))/2 select 5*1.0/2
最好使用哪种方法?
为什么人们会使用*1.0而不是投射?这只是因为它更快输入?
*1.0
答案 0 :(得分:2)
如果您想控制结果的精确度或比例,那么您必须使用CAST或CONVERT。但我相信,如果您只想要“小数”,那么按照您的建议,输入* 1.0会更快。
CAST
CONVERT
* 1.0