複数のテーブル結合と件数の表示
現在、3つのテーブルを結合して、特定の場所のみ件数を表示するSQLを作成しようとしています。
MySqlバージョン5.0.27
レイアウト的には以下の感じです。
販売員テーブル
販売員ID 店舗ID 販売員名
1 1 販売員A
2 1 販売員B
3 2 販売員C
4 2 販売員D
5 3 販売員E
店舗テーブル
店舗ID 店舗名
1 店舗A
2 店舗B
3 店舗C
売却履歴
履歴ID 販売員ID 売却日 会員フラグ
1 1 2007/11/01 1
1 1 2007/10/01 0
1 2 2007/10/01 1
1 2 2007/10/01 1
1 3 2007/09/01 1
1 4 2006/01/01 0
結果
販売員ID 販売員名 店舗名 販売回数 会員勧誘回数
1 販売員A 店舗A 2 1
2 販売員B 店舗A 2 2
3 販売員C 店舗B 1 1
4 販売員D 店舗B 0 0
5 販売員E 店舗C 0 0
販売回数は今年度の範囲内で検索をかけています。(日にちが2007/01/01以上)
現在テーブルを連結して表示までは出来るのですが、履歴の内容を日付で絞りカウントして持ってくる処理が成功しません。
結合のSQLは以下の通りです
SELECT 販売員.*, 店舗.店舗名,履歴.*
FROM ( 販売員 LEFT JOIN 店舗 ON 販売員.店舗ID = 店舗.店舗ID)
LEFT JOIN 履歴 ON 販売員.販売員ID = 履歴.販売員ID
結合時にCOUNT等の処理や条件を使って日付で絞り込む方法がいまいちよくわからない状況です。
ご教授よろしくお願いいたします。
お礼
なるほど。 これは分野を変えて質問してみた方が良いですね。 アドバイスありがとうございました。