我的SQL-fu对此太虚弱了,我甚至不确定在一次SQL调用中是否可能。是否可以在单个SQL查询中的三个表中选择多个条件计数?
鉴于我有以下表格:
PARTNER
+----+--------+
| id | name |
+----+--------+
| 1 | bloggs |
| 2 | jones |
PARTNER MANAGER
+----+--------------+------+
| id | partner_id | name |
+----+--------------+------+
| 1 | 1 | fred |
| 2 | 2 | dave |
COMPANY
+----+--------------------+--------+----------+
| id | partner_manager_id | name | active |
+----+--------------------+--------+----------+
| 1 | 1 | comp1 | true |
| 2 | 1 | comp2 | false |
| 3 | 2 | comp3 | true |
| 4 | 2 | comp4 | true |
| 5 | 2 | comp5 | true |
| 6 | 2 | comp6 | true |
我想输出在一个SQL调用如下:
+--------------+--------------------+----------------------+
| partner_name | n_active_companies | n_inactive_companies |
+--------------+--------------------+----------------------+
| bloggs | 1 | 1 |
| jones | 4 | 0 |
我可以使用连接三个表,有两个LEFT JOINs
但如何我可以汇总计数(有或没有WHERE
条款)正在逃避我。
我吠叫了错误的树,可以这么说吗?
我喜欢,如果你从一个单一的statment – Sudantha 2010-11-24 12:54:20