現在、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等の処理や条件を使って日付で絞り込む方法がいまいちよくわからない状況です。
ご教授よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
会員勧誘回数は、会員フラグの集計ですね?
SQL例です。参考にしてください。
select
H.販売員ID,販売員名,店舗名,
coalesce(販売回数,0) as 販売回数,
coalesce(会員勧誘回数,0) as 会員勧誘回数
from 販売員 as H
left join 店舗 as S on H.店舗ID=S.店舗ID
left join
(select
販売員ID,
count(*) as 販売回数,
sum(case when 会員フラグ=1 then 1 else 0 end) as 会員勧誘回数
from 売却履歴
where 売却日>='2007-01-01'
group by 販売員ID) as x
on H.販売員ID=x.販売員ID
order by H.販売員ID
;
ご丁寧にありがとうございます。無事解決いたしました。
それにしても……ここまで複雑になるんですね。
まだ条件が増やされそうですが、例を元に何とかなりそうです。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 営業・販売・サービス 店舗の店番を無給で他者に行わせる事は違法行為になりますか? 5 2022/06/11 18:27
- その他(お金・保険・資産運用) 至急!【Wolt】各メニューの価格設定の簡単な計算方法 3 2023/03/05 11:58
- 薬剤師・登録販売者・MR 登録販売者のダブルワーク 現在、登録販売者(店舗管理者)として働いていますが、近々転職しようと思って 1 2023/04/27 15:36
- 就職 就職先 どちら 2 2022/09/29 18:54
- 新卒・第二新卒 大学新卒で携帯ショップ店員はもったいないのか? 6 2023/06/10 00:12
- 営業・販売・サービス 1人の社員の問題行動が引き金になったら 2 2022/09/21 22:23
- PostgreSQL PostgreSQL レコードからアイテム種類数を取得したい 2 2022/11/23 22:31
- その他(ネットショッピング・通販・ECサイト) 通販の服、皆売り切れ。 通販の服は、目欲しい物は皆売り切れていて、探すに時間がかかる上、結局買えない 1 2022/05/06 08:56
- その他(行政) チェーン展開してる店に立ち入り調査が入ったら 1 2022/09/21 20:13
- その他(ビジネス・キャリア) お客を騙して、店が調べられたら 1 2022/09/25 07:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テーブルリンク リンク元を知...
-
L2SWはARPテーブルを持っている?
-
一致するデータのみ削除したい
-
外部キーだけのテーブル(主キ...
-
更新されたテーブルを表示したい
-
男性と2人で飲食店に行きテーブ...
-
件数の多い順にselect
-
このテーブルで
-
【エクセル】データテーブルの...
-
テーブルデータのエクスポート...
-
まるいテーブル 円い 丸い 漢字...
-
お金持ちのテーブル
-
今度同じサークルだった女の子...
-
Access 振込手数料計算
-
風水で丸いテーブルはあまりよ...
-
MySQLで複数テーブルを作成する
-
会社の飲み会の幹事になり、座...
-
ExcelからACCESSへ接続するとエ...
-
SQL 外部結合
-
大阪府内できれば南方面で
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
L2SWはARPテーブルを持っている?
-
テーブルリンク リンク元を知...
-
会社の飲み会の幹事になり、座...
-
外部キーだけのテーブル(主キ...
-
飲み会で、座敷orテーブルどち...
-
アクセスのリンクテーブル一覧...
-
複数テーブルにわたるCOUNT
-
男性と2人で飲食店に行きテーブ...
-
「テーブルに座って……」という...
-
複雑なSQL文について
-
まるいテーブル 円い 丸い 漢字...
-
お金持ちのテーブル
-
【PHP】SQL文のSUM関数で出力し...
-
論理名とコメント構文(?)について
-
1つのテーブルに同じデータを参...
-
1対1のリレーション(主キー同...
-
MySQLで複数テーブルを作成する
-
テーブルの白く剥がれてるところに
-
オーダーの覚え方について
-
このテーブルで
おすすめ情報