删除重复行
delete from t6 where rowid not in (
select max(t6.rowid) from t6 group by
t6.bm,t6.mc);
--这里用min(rowid)也可以。
具体可详看http://elf8848.iteye.com/blog/761471博客
在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢?
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from people
where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
delete from people
where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)
and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )>1)
3、查找表中多余的重复记录(多个字段)
select * from vitae a
where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
delete from vitae a
where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录
select * from vitae a
where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
mysql中不能这么用。 (等待mysql升级吧)
错误提示就是说,不能先select出同一表中的某些值,再update这个表(在同一语句中)
替换方案:
create table tmp as select min(id) as col1 from blur_article group by title;
delete from blur_article where id not in (select col1 from tmp);
drop table tmp;
分享到:
相关推荐
本人小白,记性还不太好。最近要操作SQL数据库 在网上找了好多的 SQL语句大全,这个版本个人感觉是最好的。 唯一不方便的是目录不咋的,自己加了个封面完善了下目录现做贡献给大家。
sql中的经典语句 主要是增删改查的基础用法,个人感觉挺有用的
SQLServer2000常用函数大全及个人写的SQL语句整理收藏.看完看懂里面的70%,相信你至少是小牛人。(另:本人菜鸟,自感觉不错特拿来共享,希望大家喜欢。)
熟悉一些常用的建表语句可以提升你建表的速度效率,本文整理了一些,个人感觉还不错,希望对大家有所帮助
SQL 大全 经典汇聚,适合大家温习,从易到难分阶段进行讲解 个人感觉比较好 这里有两版本,我集合到一起了
我个人感觉数据库这方面对于程序员来说很重要,无论是对于JAVA程序员还是DOTNET程序员以及其他编程人员来说都是必须掌握的。为了帮助大家更好的来回顾T-SQL,本人利用空闲的时间整理的一下T-SQL的语句和语法。希望对...
CoreData的简单用法,增删改... CoreData让不懂sql语句的人获益不少,因为他的操作基本是不用sql语句的。个人感觉效率比FMDM操作数据库高,而且还能直接生成实体类,省去了我们去一个文件一个文件的去建立model层的东西
里面介绍了mysql的操作和mysql 中一些特有sql 语句的用法 个人感觉不错 ,和大家 分享一下
C#Encrypt--Encrypt加密/Encrypt解密/附加有MD5加密,个人感觉很不错的一个加密类 HashEncode 哈希加密帮助类,得到随机哈希加密字符串,随机哈希数字加密等 MySecurity MySecurity--Security安全加密/Security...
作者:spkl ...QQ:61677931 ... 这次发布的资源管理器 功能更完善,速度很快,优化了一下代码,可以自动获取文件图标 谢谢大家的支持,这次...比如自动获取数据库框架和用户表,,,,,,个人感觉在常用操作上比OFFICE好用很多`````
最近数据库要用达梦,个人对达梦又有了新...另外达梦还有个模式的概念,这玩意个人感觉就和Mysql中的数据库一样。还有就是SQL语句,大部分情况下是一样的。但是复杂语句就要查他的文档了,因为直接使用Mysql的不靠谱。
jsp+JavaBean+servlet+设计文档,个人毕业设计,虽然...数据库提供sql语句,可以运行在sql2000和2005,当然也有2000分离出来的mdf和ldf文件。数据库提供一个触发器,和一个存储过程,当然没什么价值,都是学习用的。
所以就把SQL语句写到中间层了,大家明白就行了! 最后就是工厂三层 在实际大型项目团队开发的时候才会用得比较多,而单个人做中小项目的时候用工厂三层会很难做的,开发进度慢不说而且到后期客户要求修改的时候,会...
所以就把SQL语句写到中间层了,大家明白就行了! 最后就是工厂三层 在实际大型项目团队开发的时候才会用得比较多,而单个人做中小项目的时候用工厂三层会很难做的,开发进度慢不说而且到后期客户要求修改的时候,会...
以前Java程序员与数据库打交道都是通过JDBC,还要写 SQL语句,不过Hibernate彻底改变了这一切,它在JDBC之上又作了一次封装,从而实现了不用写SQL语句就可以实现操作数据库。 值得提醒的是,这三个框架都是轻量级的...
所以就把SQL语句写到中间层了,大家明白就行了! 最后就是工厂三层 在实际大型项目团队开发的时候才会用得比较多,而单个人做中小项目的时候用工厂三层会很难做的,开发进度慢不说而且到后期客户要求修改的时候,会...
SQL语句创建应用,于是SQL注入成了很流行的攻击方式。在这个年代,参数化查询[1]已经成了普遍用法,我们已经离 SQL注入很远了。但是,历史同样悠久的XSS和CSRF却没有远离我们。由于之前已经对XSS 很熟悉了,所以我对...
QueryBudiler,使得更多简单的单表查询可以通过对象组织查询、更改逻辑,避免过多去写相似性的SQL语句,减少DAO接口量。 三、一些亮点 1、Entity的设计:很多人看了也许会说,这个不是POJO,不是纯粹的Java ...
开发工具:visual studio 2005 , sqlserver 2005 重点要点:全程数据库操作语句 全部采用 执行存储过程 三层架构为主的程序结构 功能主要包含 查找音乐 添加音乐到音乐播放列表 删除音乐到播放列表 ...