gpt4 book ai didi

sql - 只选择差异大于 0 的值(没有负数和 0)

转载 作者:搜寻专家 更新时间:2023-10-30 21:45:17 27 4
gpt4 key购买 nike

我在 mysql 数据库表 votes 中有两列:acceptreject

我只想查询accept-reject列值之后的顶部结果

table : votes
=================
accept | reject
=================
7 | 9
5 | 1
2 | 15
5 | 1

我只想要正值和最高值,这里 5-1 = 4实际上,我有很多其他列以及接受和拒绝..我只想通过差异(仅正)的最高值ORDER结果>LIMIT 它到 1 这样我就可以得到我想要的一行..我清楚了吗? :)如何为此编写查询?谢谢..

最佳答案

使用:

   SELECT t.accept,
t.reject,
t.accept - t.reject AS difference
FROM VOTES t
WHERE t.accept - t.reject > 0
ORDER BY difference DESC
LIMIT 1

替代使用子查询:

SELECT v.accept,
v.reject
FROM VOTES v
WHERE v.accept - v.reject > 0
JOIN (SELECT MAX(t.accept - t.reject) AS difference
FROM VOTES t
WHERE t.accept - t.reject > 0) x ON x.difference = (v.accept - v.reject)

关于sql - 只选择差异大于 0 的值(没有负数和 0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1897149/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com