数据库查询

正常来讲 34199/7=4885.5714,为什么结果只显示4885呢

image.png

FineReport yzmEFF7y2982052 发布于 2023-4-21 10:14
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-4-21 10:14(编辑于 2023-4-21 10:17)

你的sql里面没有保留小数位呀,你是如何写的。什么数据库?

select 34199*1.00/7 as ttt

select sum(b.costs*1.00/b.usagetime)

  • yzmEFF7y2982052 yzmEFF7y2982052(提问者) 帆软里的呀, select 总成本,设备数,总成本/设备数 平均成本 from ( select sum(b.costs/b.usagetime)总成本,count(equipmentid) 设备数 from Equipment a join EquipmentDetail b on a.CompanyID=b.CompanyID where company=\'${company}\')
    2023-04-21 10:15 
  • CD20160914 CD20160914 回复 yzmEFF7y2982052(提问者) 你自己*1.00看吧。在b.costs*1.00
    2023-04-21 10:16 
  • yzmEFF7y2982052 yzmEFF7y2982052(提问者) 回复 CD20160914 谢谢呀,出现小数了,这是为什么呀
    2023-04-21 10:17 
  • CD20160914 CD20160914 回复 yzmEFF7y2982052(提问者) sql server里面如果默认用除法不转换数据类型。它只保留整数。。所以我*1.00就是把它转换为小数了。这样后面就会有小数了。
    2023-04-21 10:20 
最佳回答
0
qiqits1984Lv6中级互助
发布于2023-4-21 10:16(编辑于 2023-4-21 10:17)

因为你字段类型是  整数  所有只能显示整数型,换个支持小数的类型,转换成支持小数的类型也可以。

image.png

  • yzmEFF7y2982052 yzmEFF7y2982052(提问者) 这个整数形式不是我设置的呀,是我写完sql它自己就这样展示呀
    2023-04-21 10:19 
  • yzmEFF7y2982052 yzmEFF7y2982052(提问者) select 总成本,设备数,总成本/设备数 平均成本 from ( select sum(b.costs/b.usagetime)总成本,count(equipmentid) 设备数 from Equipment a join EquipmentDetail b on a.CompanyID=b.CompanyID where company=\\\'${company}\\\') 我在b.costs*1.00 就出现小数啦
    2023-04-21 10:20 
最佳回答
0
1592Lv6高级互助
发布于2023-4-21 10:16

试试

select 总成本,设备数,总成本/cast(设备数 as numeric) 平均成本 from table

  • 3关注人数
  • 195浏览人数
  • 最后回答于:2023-4-21 10:17
    请选择关闭问题的原因
    确定 取消
    返回顶部