select a.id,a.subject,a.RECEIVER from test1 a left join (select c.subject,c.RECEIVER ,max(c.id) as bid from test1 c where status=0 GROUP BY RECEIVER,SUBJECT having count(1) >1) b on a.id<b.bid where a.subject=b.subject and a.RECEIVER = b.RECEIVER and a.id <b.bid
2. 删除重复记录,只保留一条记录。注意,subject,RECEIVER 要索引,否则会很慢的。
delete a from test1 a, (select c.subject,c.RECEIVER ,max(c.id) as bid from test1 c where status=0 GROUP BY RECEIVER,SUBJECT having count(1) >1) b where a.subject=b.subject and a.RECEIVER = b.RECEIVER and a.id <b.bid
思路:数据库如果存在就更新,不存在就插入首先:1.对你要设置的表,点击右键--管理索引--新建--选择要唯一的主键--在“索引选项”中选择“唯一性”--应用
思路:数据库如果存在就更新,不存在就插入
1.对你要设置的表,点击右键--管理索引--新建--选择要唯一的主键--在“索引选项”中选择“唯一性”--应用
2、语句:INSERT INTO 表名(字段,字段,字段,字段) VALUES ('127.0.0.5','1',NOW(),NOW())
ON DUPLICATE KEY UPDATE 字段 = online_num+1,last_time = NOW()
自己延伸一下就明白了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)