本文介绍了操作数应包含 1 列 - MySQL NOT IN的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
SELECT * from campaigns WHERE id not in
(SELECT
e.id_campaign, d.name, d.frequency, d.country, d.referral, d.bid, d.status, COUNT(e.id) AS countcap
FROM campaigns d
LEFT JOIN served e
ON d.id = e.id_campaign
WHERE
d.status = 'Active'
GROUP BY e.id_campaign
HAVING
countcap < d.frequency)
我收到错误操作数应该包含 1 列" - 但我需要 COUNT(e.id)
I get the error "Operand Should Contain 1 Column" - but I need the COUNT(e.id)
推荐答案
总是这样:
select *
from campaigns
where id not in (
select id_campaign from (
select e.id_campaign as id_campaign, d.frequency, e.id
from campaigns d left join served e on d.id = e.id_campaign
where d.status = 'Active'
group by e.id_campaign
having count(e.id) < d.frequency
)
)
这篇关于操作数应包含 1 列 - MySQL NOT IN的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!