考虑下面的“用户”表:

uid  followers  following  ff_fraction
--------------------------------------
1    40         2          20
2    10         3           3
3     0         2           0
4     5         0           5
5    77         2
6     9         3


我想为每个用户计算关注者/跟随者的比例,四舍五入为整数。我为前4个用户填写了表格:


40/2 = 20
10/3 = 3.3333 =>舍入3
0/2 = 0
5/0 =>这将产生错误,因此我数+1,使5/1 = 5


我现在有以下查询,但它不能解决“跟随”为零的情况(因此必须加1才能避免零误差除法):

UPDATE users SET ff_fraction = ROUND(followers/following)


是否可以在MySQL查询中解决此问题?

最佳答案

您可以执行以下操作:

UPDATE users SET ff_fraction = ROUND(followers/if(following>0,following,1))

关于mysql - 在查询中添加+1以解决“被零除”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9925170/

10-09 05:44