将 SQL Query 中两列之间的百分比计算为另一列

新手上路,请多包涵

我有一个包含两列的表,最大位置数(容量)和可用位置数(availablePlaces)

我想将 availablePlaces 计算为容量的百分比。

 availablePlaces    capacity
1                  20
5                  18
4                  15

期望的结果:

 availablePlaces    capacity  Percent
1                  20        5.0
5                  18        27.8
4                  15        26.7

任何允许我这样做的 SELECT SQL 查询的想法?

原文由 missdevops 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 553
2 个回答

尝试这个:

 SELECT availablePlaces, capacity,
       ROUND(availablePlaces * 100.0 / capacity, 1) AS Percent
FROM mytable

您必须乘以 100.0 而不是 100,以避免整数除法。此外,您必须使用 ROUND 舍入到第一个十进制数字。

演示在这里

原文由 Giorgos Betsos 发布,翻译遵循 CC BY-SA 3.0 许可协议

以下 SQL 查询将为您执行此操作:

 SELECT availablePlaces, capacity, (availablePlaces/capacity) as Percent
from table_name;

原文由 bryan.blackbee 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进