前任者からの引き継ぎが足らず、困っております。
SQLに不慣れなもので、どなたかご教示下さい。
4つのテーブルからなるデータベースからデータを抽出したいのですが、解決出来ずにおります。
テーブル構成は
1.通話履歴テーブル
CALL_ID(ユニーク)
顧客ID(=顧客テーブル.顧客ID)
アクション名
通話日時
対応優先度
2.顧客テーブル
顧客ID(ユニーク)
電話番号
住所
氏名
etc
3.電話番号履歴管理テーブル
登録日
電話番号
区分ID(=区分管理テーブル.区分ID)
4.区分管理テーブル
区分ID(ユニーク)
区分
という構成で、ここから、
顧客テーブル.電話番号, 通話履歴テーブル.アクション名, 通話履歴テーブル.対応優先度, 区分管理テーブル.区分
を一覧取得する必要があります。
これまでは単純にJOINするだけで実現出来ておりましたが、電話番号履歴管理テーブルに登録したデータに重複するケースがあり、条件をつけてデータを抽出しなければなりません。
例えば
2015/01/01にXという区分で09011112222という電話番号が登録されており、かつ、
2016/01/01にYという区分で09011112222という電話番号が登録されています
この時に2015/07/01に09011112222と通話した記録でデータを抽出するときに、 区分管理テーブル.区分はXで抽出しなければなりません。
つまり、通話した時点での区分を抽出したいのです。
このような組み合わせが多数あり、お手上げです。
抽出対象期間が2015/06/01~2016/01/01の通話履歴だとしたら、どのようなSQLなら、実現できますでしょうか?
回答3件
あなたの回答
tips
プレビュー