http://sqlfiddle.com/#!2/6a6b1
スキームは上記のとおりです。私がやりたいのは、売上/月の合計として結果を取得することです...ユーザーは開始日と終了日を入力し、月と年のすべてを(PHPで)生成できます。それらの日付。たとえば、12か月間の「販売」の総数を知りたい場合、開始日と終了日で12の個別のクエリを実行できることはわかっていますが、結果が次のようになるクエリを1つだけ実行したいと思います。
Month numofsale
January - 2
Feb-1
March - 23
Apr - 10
等々...
または、月のない売上のリストを、PHPで生成された月の配列と組み合わせることができます...任意のアイデア...
sqlfiddle.comから貼り付けられた編集/スキーマとデータ:
CREATE TABLE IF NOT EXISTS `lead_activity2` (
`lead_activity_id` int(11) NOT NULL AUTO_INCREMENT,
`sp_id` int(11) NOT NULL,
`act_date` datetime NOT NULL,
`act_name` varchar(255) NOT NULL,
PRIMARY KEY (`lead_activity_id`),
KEY `act_date` (`act_date`),
KEY `act_name` (`act_name`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ;
INSERT INTO `lead_activity2` (`lead_activity_id`, `sp_id`, `act_date`, `act_name`) VALUES
(1, 5, '2012-10-16 16:05:29', 'sale'),
(2, 5, '2012-10-16 16:05:29', 'search'),
(3, 5, '2012-10-16 16:05:29', 'sale'),
(4, 5, '2012-10-17 16:05:29', 'DNC'),
(5, 5, '2012-10-17 16:05:29', 'sale'),
(6, 5, '2012-09-16 16:05:30', 'SCB'),
(7, 5, '2012-09-16 16:05:30', 'sale'),
(8, 5, '2012-08-16 16:05:30', 'sale'),
(9, 5,'2012-08-16 16:05:30', 'sale'),
(10, 5, '2012-07-16 16:05:30', 'sale');