坚持使用复杂的MySQL查询

时间:2014-01-01 09:25:51

标签: mysql sql

所有StackOverFlow贡献者和用户2014年新年快乐。

我搜索并浏览了类似于我的可用主题。但是,未能找到满足我的要求。因此,请在此处发布。

我有四个表:"组织","会员","资源"和"会员资源"

可以在SQLFiddle

找到架构

我想找出每个组织有多个res_name的{​​{1}}表中不同Resource的数量。预期产出如下:

res_prop

在这方面的任何帮助将不胜感激。

谢谢和问候,

1 个答案:

答案 0 :(得分:0)

SELECT org_id,count(DISTINCT res_name) as res_count
FROM
(SELECT o.org_id,r.res_name,COUNT(DISTINCT res_prop)as distinct_res_prop
FROM organization o
INNER JOIN members m USING (org_id)
INNER JOIN `member-resource` mr USING (mem_id)
INNER JOIN resource r USING (res_id)
GROUP BY o.org_id,r.res_name
HAVING COUNT(distinct_res_prop) > 1
 )T1
GROUP BY org_id

在HAVING子句中添加COUNT

Fiddle