H hxt33 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-23 #1 如果要查询分析器中写 select 1.0/10 结果是: .100000 如果要显示成:0.100000,就是要前面加0,还是要数值型 应该怎么写SQL??
D deardai Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-23 #2 好像改個寫法會加0,但是小數的最后面的一位會帶一個尾巴, select cast(1.0 as float)/10 結果是:0.10000000000000001不知道合不合你的要求
H hxt33 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-23 #3 小数点后太多位了?能不能只要4位? 如果用select convert(decimal(9,4),cast(1.0 as float)/10) 还是不行!!
C Corn3 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-23 #4 select cast(1.0/10 as varchar)
D deardai Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-23 #5 楼上看都不看就瞎说,没看到别人说是数值型啊, select cast(cast(cast(1 as float)/7 as decimal(10,4)) as real) (0.1429) 这样你看行不行,他只能是不足四位取实际位数,大于四位取前四位,看这样合不合要求,
楼上看都不看就瞎说,没看到别人说是数值型啊, select cast(cast(cast(1 as float)/7 as decimal(10,4)) as real) (0.1429) 这样你看行不行,他只能是不足四位取实际位数,大于四位取前四位,看这样合不合要求,
Q qvbyaolin Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-23 #6 我請教過高手了,要查询分析器中写,是不能實現的,只有在程序中寫啊
H hxt33 Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-24 #7 select cast(cast(cast(1 as float)/3 as decimal(10,4)) as real) 为什么会是 0.33329999 而不是0.3333???
H hityou Unregistered / Unconfirmed GUEST, unregistred user! 2006-10-24 #8 那是sqlserver自身的精度问题,因为你转换的时候进行了除法,float/decimal, 最后的as用decimal就可以了。