MySQL 2つのテーブルから情報を得る
【質問内容】
出稿した求人広告に関する情報を収めたデータベース内に、以下の2つのテーブルがあります
※以下の文章を読むより、添付画像をご覧頂いたほうが分かりやすいと思いますが
1.出稿した求人広告の情報
テーブル名:ad_info
id ID
plan 広告プラン名
date_from DATE 広告開始日 2011-12-16
date_until DATE 広告終了日 2011-12-31
price 広告料金
2.求人サイトへのアクセス情報(広告掲載期間のみ毎日2時間おきに収集)
テーブル名:daily_access
id ID
created_at DATETIME クローリングした日時 2011-12-16 17:00:00
pv プレビュー数
applicants 応募者数
occupation_ranking 職種別画面での自社の掲載順位
newly_ranking 新着企業画面での掲載順位
この2つのテーブルからad_infoの広告ごとに(その掲載期間ごとに)、daily_accessのデータを集計したいと思っています。しかしそのためのSQL文がうまく書けず、詰まっています。
どうか良い方法を教えていただけませんでしょうか。
あるいは「テーブル構造自体を変えたほうがいいよ」、「SQL文の書き方が良くないよ」など直接関係のないことでも大歓迎です。
よろしくお願いします。
【MySQLバージョン情報】
$ mysql --version
mysql Ver 14.14 Distrib 5.5.16, for Linux (x86_64) using EditLine wrapper
【テーブル作成文】
CREATE TABLE `ad_info` (
`id` INTEGER NOT NULL AUTO_INCREMENT,
`plan` VARCHAR(30) DEFAULT NULL,
`date_from` DATE DEFAULT NULL,
`date_until` DATE DEFAULT NULL,
`price` INTEGER DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `daily_access` (
`id` INTEGER NOT NULL AUTO_INCREMENT,
`created_at` DATETIME NOT NULL,
`pv` INTEGER DEFAULT NULL,
`applicants` INTEGER DEFAULT NULL,
`occupation_ranking` INTEGER DEFAULT NULL,
`newly_ranking` INTEGER DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;