サブクエリを使わずにこんな処理はどうすれば(HELP!)
DB初心者の私、サブクエリの使えないMySQL4.0+PHPでWebシステムを構築しようとしていますが、以下のようなことで困っています。
以下のような販売データのDBがあるとします(あくまで例です)。
----------------
product shop
----------------
A a
B a
C b
A c
B d
D c
D b
C a
C a
C a
B a
----------------
このproductを、shop='a'のレコードに絞込み、その他のshopを含めた販売数の多い順にソートして出力したいのです。
上表の例では、productのA,B,Cがshopのaで売れており、全体では、Cが4個,Bが3個,Aが2個売れているので、C,B,Aという順序に出力したいのです。
こんな処理がMySQLでサブクエリを使わず書けるでしょうか?
実際に扱うデータはもっと複雑で、productの種類もレコード数も多く、1ページ10 productずつなど、複数ページに亘って表示させたいです。
しかし、PHP側でソート処理を行う場合、セッションなどを用いて、ページ間でデータを引き継がなくてはなりません。
いろいろ調べると基本、ページ毎にクエリを投げるほうがよいということらしいので、できればPHPのページごとにクエリを投げて、MySQL側でソートまでしてもらい、PHPではその結果を受け取って表示するだけという形にしたいと思っているのですが。。。
素人なもので、行き詰っています。どなたかのお知恵を拝借したく、よろしくお願いします!