gpt4 book ai didi

带有相关查询的 MySQL Having 子句不起作用

转载 作者:可可西里 更新时间:2023-11-01 07:02:30 26 4
gpt4 key购买 nike

我的 having 子句有问题。我想比较具有相同出价但不同 sens 字段的两个总和我得到这个输出:

SELECT v.bid 
FROM v1 v
WHERE sens = 'c'
GROUP BY bid
HAVING Sum(mont) < (SELECT Sum(l.mont)
FROM v1 l
WHERE sens = 'd'
AND l.bid = v.bid group by l.bid);

ERROR 1054 (42S22): Field 'v.bid unknown in field list`

编辑:V1 是一个 View ,我使用别名 l 和 v 试图将子查询连接到主查询

抱歉,伙计们,谢谢大家的回答,我在原始表格的列中遇到了问题,现在已经解决了:)

最佳答案

不需要从此表中进行两次选择,您可以为此目的使用CASE EXPRESSION:

SELECT v.bid FROM v1 v
GROUP BY v.bid
HAVING SUM(CASE WHEN v.sens = 'c' THEN v.mont ELSE 0 END) <
SUM(CASE WHEN v.sens = 'd' THEN v.mont ELSE 0 END)
AND COUNT(CASE WHEN v.sens = 'c' THEN 1 END) > 0

关于带有相关查询的 MySQL Having 子句不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40017431/

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