親/子/孫タイプのテーブル関係が次のように定義されています。
tableA:parentIDの説明
tableB:childIDparentIdの説明
tableC:孫IDchildId説明itemComplete
特定のparentIDのtableB内のすべてのレコードを、孫レコードの総数と完了した孫レコードの総数(itemComplete = true)とともに一覧表示するクエリを作成する必要があります。
parentIDはwhere句の一部になります(parentId = xであるtableBから*を選択します)。カウントはchildIdの現在の行の値に依存するため、私が理解できない問題は、tableCからカウントを取得する方法です。
言い換えれば、次のようなクエリが必要です。
select description,
(select count (*) from tableC where childId = X) as Items,
(select count (*) from tableC where childId = X And itemComplete = true) as CompleteItems
from tableB where parentId=Y
ここで、XはtableBからの現在の行のchildIdです。サブクエリの各行からchildIdを参照して、アイテムの数と完了したアイテムの数を取得するにはどうすればよいですか?