大神们求助啊。这样的关联查询如何实现啊。join了一天了还没join出来。。。。 本帖最后由 q2979978 于 2012-11-06 15:14:55 编辑
比如我现在有三个表,A: id name desc等等字段 B:aid detail C:aid detail
现在我想通过一个id集合得到每条A中的数据加上两个字段,就是aid在B中的出现的次数和C中出现的次数
得到的结果例如
id name desc countB countC
1001 一号 一号统计 2 0
1002 二号 二号统计 3 2
大神们快来帮帮我吧~~~~ ------最佳解决方案--------------------
SELECT A.ID, A.NAME, A.DESC
FROM A
LEFT OUTER JOIN (SELECT AID, COUNT(*) BCOUNT FROM B GROUP BY B.AID) BB
ON A.ID = BB.AID
LEFT OUTER JOIN (SELECT AID, COUNT(*) CCOUNT FROM C GROUP BY C.AID) CC
ON A.ID = CC.AID
------其他解决方案-------------------- SELECT A.ID, A.NAME, A.DESC, B.COUNTB, C.COUNTC
FROM A, B, C
WHERE A.ID = B.AID
AND A.ID = C.AID
------其他解决方案--------------------
SELECT A.ID, A.NAME, A.DESC, BB.BCOUNT, CC.CCOUNT
FROM A
LEFT OUTER JOIN (SELECT AID, COUNT(*) BCOUNT FROM B GROUP BY B.AID) BB
ON A.ID = BB.AID
LEFT OUTER JOIN (SELECT AID, COUNT(*) CCOUNT FROM C GROUP BY C.AID) CC
ON A.ID = CC.AID