全体数:MYSQL私は3つのテーブル持っているアクティブなテーブル
person
-----------
person_id, active
person_team
-----------
person_id, team_id, active
team
-----------
team_id, active
を私はactive
が各テーブルに真である各person
からteams
の数を取得したいのですが。
は、これまでのところ私が持っている:
SELECT t.id, t.title, t.created_timestamp, COUNT(p_t.tag_id) AS count
FROM team t
LEFT JOIN
person_team p_t ON p_t.team_id = t.id AND p_t.active = 1
WHERE
t.active = 1
GROUP BY t.id
ORDER BY t.title
これはチームと人のカウントを取得 - チームがアクティブになっているのが、人がアクティブであるかどうかを考慮していません。サブクエリまたは別のタイプの結合を使用する必要がありますか?
いくつかのサンプルテーブルデータを提供 – Wanderer
グループではないときにselectで 't.title、t.created_timestamp'をどのように選択できますか? – Utsav