-- delete duplication emails
DElimiter $$
drop procedure if exists remove_duplication_email $$
create procedure remove_duplication_email()
begin
declare a int default null ;
declare IS_FOUND integer default 1;
declare cur_duplication_emails cursor for SELECT id
FROM
`case_mail_inbox` inbox
WHERE inbox.id >
(SELECT
MIN(inner_box.id)
FROM
case_mail_inbox inner_box
WHERE inner_box.internet_msg_id = inbox.`internet_msg_id`);
declare continue handler for not found set IS_FOUND=0;
open cur_duplication_emails;
read_loop: LOOP
fetch cur_duplication_emails into a;
if IS_FOUND =0 then
leave read_loop;
end if;
DELETE
FROM
`case_mail_attachment`
WHERE mail_ref=a;
DELETE
FROM
`case_mail_inbox`
WHERE id = a;
end LOOP;
close cur_duplication_emails;
end $$
DELIMITER ;
call remove_duplication_email();
drop procedure if exists remove_duplication_email;