Mysql Foreach Child は Max() と Min() を 1 行に表示します
質問
親レコードごとに子行の最大列と最小列を返すように選択ステートメントを使用することは可能ですか?
したがって、多くの子レコードを持つ親レコードごとに、特定の列の子レコードの最大値と最小値を確認したいと考えています。
単一の select ステートメント内でこれを行うにはどうすればよいでしょうか?
次のような内容になるはずです。 作成日とその日の間のすべての親レコードを返してください。返された親レコードごとに、そのすべての子行の列 "a" の最大値を表示し、すべての子行の列 "a" の最小値も表示します。
最終結果には以下が表示されるはずです:
ParentID、MaxChildColumna、MinChildColumna
解決
あなたはこのような何かを行うことができます:
select p.id, max(c.a), min(c.a)
from parent as p
left outer join child as c
on c.parentid = p.id
group by p.id;
所属していません StackOverflow