我需要做如下事情:

SELECT * FROM Video WHERE visible = 1 ORDER BY votesUp/votesDown DESC

但我知道votesDown可以承受0(零)作为它的值。我怎样才能避免被零除呢?
OBS:在我的例子中,可以让votesDown在0时变为1。

最佳答案

使用IF()功能,您可以将0转换为1
你能试试这个吗?

SELECT *
FROM Video
WHERE visible = 1
ORDER BY votesUp / IF(votesDown = 0, 1, votesDown) DESC

10-07 23:17