在sql中执行双除法
我正在尝试双倍除法,但没有结果 以下是一个例子:在sql中执行双除法,sql,syntax-error,divide,Sql,Syntax Error,Divide,我正在尝试双倍除法,但没有结果 以下是一个例子: 6.82 / (X/NULLIF (Y,0)) 当Y为NULL或0时,这将抛出一个被零除的错误。您可以引入条件逻辑来处理此类错误。如果Y为NULL或0,则分母将等于- ( X / 0 ) 这将导致0除错误 这种潜在的错误可以通过将整个表达式重写为- ( 6.82 * COALESCE( Y, 0 ) ) / X COALESCE函数将返回它遇到的第一个非NULL参数,因此在这种情况下,如果Y为NULL,它将返回0,否则它将返回Y 类似地,如
6.82 / (X/NULLIF (Y,0))
当Y为NULL或0时,这将抛出一个被零除的错误。您可以引入条件逻辑来处理此类错误。如果Y为NULL或0,则分母将等于-
( X / 0 )
这将导致0除错误
这种潜在的错误可以通过将整个表达式重写为-
( 6.82 * COALESCE( Y, 0 ) ) / X
COALESCE函数将返回它遇到的第一个非NULL参数,因此在这种情况下,如果Y为NULL,它将返回0,否则它将返回Y
类似地,如果X等于0,则应发生0除错误。您应该如何避免这种情况取决于您尚未确定的问题的背景。因此,我不能建议如何处理这种情况
如果您有任何问题或意见,请随时发表相应的评论
进一步阅读
在MySQL的合并功能上为了提高问题的质量,请在问题上添加另一个标记,以确定您使用的是哪种形式的SQL,如MySQL、SQL Server等。当X为0时如何?如果您给出此类逻辑或其他解决方法的示例,将改进此答案。您好,感谢您的回答,但是我已经尝试了方程-X/nully,如果Y,0,这给了我结果,因此X根本不是零,当我想要执行上面提到的方程时,没有结果。双师制可能吗?如果不可能的话,我会非常惊讶。按照数学标准,这种操作相当基本,应该具备大多数语言的能力。不过,我不能确定,因为根据我对这个问题的评论,你还没有确定你在使用哪种语言。如果你能告诉我,我可以进行一些研究,并希望找出这个问题。感谢你的帮助,它的MySql,对不起第一次在这里。没有担心。我明天早上去查一下,现在是2346。同时,我建议编辑您的问题,为MySQL添加一个标签。如果您能从我的等式中获得任何意义,请告诉我:
( 6.82 * COALESCE( Y, 0 ) ) / X