LEFT JOIN
でクエリのペアを統合しようとしていますので、希望の列にORDER BY
を実行できます。関連するMySQLテーブルから最大値を取得する
表A、表Bとの排他的一対多の関係があり、テーブルBは、私は、列の最大値を取得したい表C.
との排他的一対多の関係を有します表Cは、表Aの行ごとに私が持っていたもの
されました:
$tableA = SELECT * FROM tableA;
for each row in $tableA {
$maxValue = SELECT MAX(value) FROM tableC WHERE tableB_id IN (SELECT tableB_id FROM tableB WHERE tableA_id={$row['tableA_id']}) GROUP BY tableB_id;
}
、今、私はの線に沿って考えています:
SELECT * FROM tableA LEFT JOIN (SELECT tableA_id, MAX(max_c_value) FROM (SELECT tableB_id, MAX(value) max_c_value FROM tableC GROUP BY tableB_id) t GROUP BY tableA_id) USING(tableA_id)
しかし、私はそれがぎこちないことを知っています。私はここからどこに行くべきか分からない。 問題を説明するのは難しいです。申し訳ありません。
私は 'SELECT *'パターンが大好き! –