我对MySQL有一个相当棘手的问题。MySQL组和加入表的总和
我有两个表以一对多关系(下面是相关colums)
表A(活动):
id | channel_type | date
表B(预算):
id | campaign_id | budget
我需要单个查询来获取以下结果:
- 按频道类型计算的广告系列数
- 与找到的广告系列相关的所有预算总和。
我需要过滤的广告活动表格按列结果(例如在campaigns.date> '2014-05-01')
我曾尝试以下方法:
SELECT channel_type, COUNT(*) cnt,
(SELECT SUM(budget) FROM budgets WHERE budgets.campaign_id = campaigns.id))
as budget
FROM campaigns
WHERE campaigns.date >= 'some-value'
AND [more conditions]
GROUP BY campaigns.channel_type
但这当然,由于GROUP我只获得第一个campaign.id结果的channel_type,所以失败了。
任何提示(和解决方案)将非常感激!
TIA
集这件事在[SQL小提琴(http://sqlfiddle.com/),我会帮 – 2014-08-27 16:37:23
如果你仍然有兴趣,我已经把它在小提琴:这里](http://sqlfiddle.com/#!2/a5e42/5) – duffpl 2014-08-27 18:43:52