夜遅くに私を逃していると思う簡単なMySQLクエリ質問があります。私は、一連のデータ(注文)のインスタンスの数を数え、注文自体の上にいくつかのレベルの親に存在する値でそれらのインスタンスをグループ化するSELECTを実行しようとしています。例えばMySQLの複数レベルの親の選択/参加の質問
:
SELECT COUNT(orders.id)、受注、カテゴリWHERE 受注FROM区分 :私が何を探しています何
CREATE TABLE `so_test`.`categories` (
`id` int(10) unsigned NOT NULL auto_increment,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=572395 DEFAULT CHARSET=latin1;
CREATE TABLE `so_test`.`product_group` (
`id` int(10) unsigned NOT NULL auto_increment,
`category_id` int(10) unsigned NOT NULL auto_increment,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=572395 DEFAULT CHARSET=latin1;
CREATE TABLE `so_test`.`products` (
`id` int(10) unsigned NOT NULL auto_increment,
`product_group_id` int(10) unsigned NOT NULL auto_increment,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=572395 DEFAULT CHARSET=latin1;
CREATE TABLE `so_test`.`orders` (
`id` int(10) unsigned NOT NULL auto_increment,
`product_id` int(10) unsigned NOT NULL auto_increment,
`customer_id` int(10) unsigned NOT NULL auto_increment,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=572395 DEFAULT CHARSET=latin1;
は、近傍のものです。 customer_id in(1,2,3)GROUP BY orders.productId.productGroupId.categoryId
カテゴリー1の商品は17件、カテゴリー2の商品は2件、カテゴリー3の214件の注文があると仮定すると、 tは私はバックを取得するために願っています:
count(orders.id), categoryId
============================
17 1
2 2
214 3
私はPRODUCT_ID私は、二レベルアップ部分は私を投げているfine..butことだろうと言うことで、グループにしようとしていた場合。
ありがとうございます!
本当にありがとうございます! – DarkSquid