@SimonGoldstone のように、CDR の重複は多くの理由で発生する可能性があります。
- データは、NTP を使用せずに複数のサーバーによって収集されます。
- 各サーバーは異なるタイムゾーンを使用します。
- 電話会議
含まれている呼び出しを抽出したい場合は、次のコードを使用できます。
create table t (
Caller_id bigint,
Called_number bigint,
call_date datetime,
duration float,
charge float);
insert into t
values
(5555555555, 42555777777, '2013-12-09 17:15:46', 44, 44),
(5555555555, 5556666666, '2013-12-09 17:21:28', 5,9.25);
select t.*
from t join ( select caller_id, called_number, call_date as start_date,
date_add(call_date,INTERVAL duration minute) as end_date from t) t1 on (t.caller_id = t1.caller_id and t.call_date between t1.start_date and t1.end_date) where t.called_number != t1.called_number
この投稿もご覧ください:
重複する日付範囲 - 重複のみを識別する