Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2003852
  • 博文数量: 433
  • 博客积分: 918
  • 博客等级: 准尉
  • 技术积分: 3218
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-24 18:21
个人简介

你是不是暗恋我,那就给我发个消息呀,让我知道o(∩∩)o

文章分类

全部博文(433)

分类: Mysql/postgreSQL

2014-05-30 14:33:15

DELIMITER //
CREATE PROCEDURE del_proc()
BEGIN 
/*创建临时表*/
CREATE TEMPORARY TABLE IF NOT EXISTS tmpTable(
`id` INT(11) NOT NULL,
`old_id` INT(11) NOT NULL 
)ENGINE =MEMORY CHARSET=utf8 COMMENT '临时表用于去重';
#将deltable中重复的数据取出一条放入临时表中
INSERT INTO tmpTable(id,old_id) SELECT id, old_id FROM deltable GROUP BY old_id HAVING COUNT(old_id)>1;
#删除deltable中的但不在tmpTable中的数据,条件是id不等,old_id相等
SELECT COUNT(*) FROM tmpTable;
#删除deltable中重复的数据
DELETE FROM deltable USING deltable, tmpTable  WHERE tmpTable.old_id = deltable.old_id  AND deltable.id != tmpTable.id;
#清空临时表
DELETE FROM tmpTable WHERE 1=1;
END;//
DELIMITER ;
阅读(1774) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~