SELECT goals, games, ROUND(goals/games, 2) AS "goalspergame"
FROM bgoals
ORDER BY goals DESC, games ;
结果总是给出1,00和0,00,而不是在两个小数位上舍入的确切数字。如果我把100 *放在目标前面,那么我得到一个有用的结果百分比,但是我不希望百分之百。
为了获得有用的结果,我该怎么做?
我已经使用了搜索功能,但到目前为止还没有任何功能。 This似乎很好,但我要么不知道如何使用它,要么它不起作用。
答案 0 :(得分:0)
这是否有效:
'SELECT goals, games, ROUND(CAST(goals AS FLOAT)/CAST(games AS FLOAT), 2) AS "goalspergame"
FROM bgoals
ORDER BY g.goalsscored DESC, g.ggamesplayed'
答案 1 :(得分:0)
听起来你正在进行整数除法,我假设goals
和games
是整数。一个简单的解决方法是乘以1.0得到十进制结果:
SELECT goals, games, ROUND(goals*1.0/games, 2) AS "goalspergame"
FROM bgoals
ORDER BY g.goalsscored DESC, g.ggamesplayed ;
整数类型在划分时返回整数结果,但如果分子或分母是小数,则返回小数结果。