`

个人感觉不错的SQL语句

 
阅读更多
删除重复行
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;
分享到:
评论

相关推荐

    sqlserver内存释放工具(个人感觉还不错)

    描述中提到的“个人感觉还不错”和“用过多次,挺好用”,这表明该工具在实际使用中表现出良好的效果,能够有效地释放内存,改善系统性能。不过,要注意的是,任何工具的适用性都会受到特定环境的影响,因此,在使用...

    Oracle课件---个人感觉不错,是我们老师做的

    本课件“Oracle课件---个人感觉不错,是我们老师做的”旨在帮助学习者深入理解和掌握Oracle数据库的相关知识。以下将对Oracle数据库的一些核心概念、功能和操作进行详细介绍。 1. **Oracle数据库基础** - 数据库...

    CoreData增删改查Demo

    CoreData的简单用法,增删改... CoreData让不懂sql语句的人获益不少,因为他的操作基本是不用sql语句的。个人感觉效率比FMDM操作数据库高,而且还能直接生成实体类,省去了我们去一个文件一个文件的去建立model层的东西

    oracle+proc+c的学习,个人看了感觉非常好,学习中。

    - **网络效率**:相比于单条SQL语句的处理,PL/SQL以语句块的形式发送给服务器,减少了网络传输次数,提高了网络效率。 ### PL/SQL块结构 PL/SQL采用块结构,每个块可以分为三个部分:声明部分、执行部分和异常...

    C#基类库(苏飞版)

    C#Encrypt--Encrypt加密/Encrypt解密/附加有MD5加密,个人感觉很不错的一个加密类 HashEncode 哈希加密帮助类,得到随机哈希加密字符串,随机哈希数字加密等 MySecurity MySecurity--Security安全加密/Security...

    C#资源管理器 和 SQL

    作者:spkl ...QQ:61677931 ... 这次发布的资源管理器 功能更完善,速度很快,优化了一下代码,可以自动获取文件图标 谢谢大家的支持,这次...比如自动获取数据库框架和用户表,,,,,,个人感觉在常用操作上比OFFICE好用很多`````

    达梦数据库连接方式及jdbc驱动包.rar

    最近数据库要用达梦,个人对达梦又有了新...另外达梦还有个模式的概念,这玩意个人感觉就和Mysql中的数据库一样。还有就是SQL语句,大部分情况下是一样的。但是复杂语句就要查他的文档了,因为直接使用Mysql的不靠谱。

    关于SQL2005

    在SQL Server 2000中,企业管理器用于管理数据库对象,而查询分析器用于编写和执行SQL语句。在SQL Server 2005中,这两个工具合并为Management Studio,提供了一个集成的开发环境。 3. **硬件要求**: SQL Server...

    一个感觉不错的.NET数据层访问组件,封装的不错

    1. **对象关系映射(ORM)**:LzDal可能实现了ORM技术,允许开发者使用面向对象的方式来操作数据库,无需编写大量的SQL语句。ORM简化了数据库操作,提高了开发效率,并降低了数据库依赖。 2. **自动数据映射**:...

    ERP人力资源管理系统(个人毕业设计)

    jsp+JavaBean+servlet+设计文档,个人毕业设计,虽然...数据库提供sql语句,可以运行在sql2000和2005,当然也有2000分离出来的mdf和ldf文件。数据库提供一个触发器,和一个存储过程,当然没什么价值,都是学习用的。

    ASP.NET三层架构添加删除修改查询实例

    所以就把SQL语句写到中间层了,大家明白就行了! 最后就是工厂三层 在实际大型项目团队开发的时候才会用得比较多,而单个人做中小项目的时候用工厂三层会很难做的,开发进度慢不说而且到后期客户要求修改的时候,会...

    java 连接数据库 lookandfeel java网络编程

    4. 执行SQL语句:调用PreparedStatement的`executeQuery()`或`executeUpdate()`方法,根据SQL语句类型(查询、插入、更新或删除)来执行。 5. 处理结果集:如果执行的是查询语句,将返回ResultSet对象,可以遍历并...

    plsql_developer教程.pdf

    - 收集统计信息来评估SQL语句的执行效率。 - 可以帮助调整索引策略。 ##### 5.3 PL/SQL概览图 - 以图形化的形式展示程序的结构。 - 便于理解和优化复杂的程序逻辑。 ##### 5.4 SQL跟踪 - 支持开启SQL跟踪功能。 - ...

    幸福的感觉留言本

    这涉及到SQL语句的编写和执行,用于数据的增删改查。 6. **用户体验设计**:一个成功的留言本不仅要实现基本功能,还要注重用户体验。比如,界面应该简洁易用,加载速度快,操作直观,同时也要考虑响应式设计,适应...

    asp.net (c# 语言) 简单的三层架构实例

    所以就把SQL语句写到中间层了,大家明白就行了! 最后就是工厂三层 在实际大型项目团队开发的时候才会用得比较多,而单个人做中小项目的时候用工厂三层会很难做的,开发进度慢不说而且到后期客户要求修改的时候,会...

    MySQL-Front(5.3版本)

    3. **SQL编辑器**:提供了一个集成的SQL编写环境,支持语法高亮和自动完成,有助于编写复杂的SQL语句。 4. **数据库设计**:用户可以创建、修改和管理数据库模式,包括表结构、索引和关系,为数据库设计提供了直观的...

    三层结构实现了做网站最基本的添删改查功能

    所以就把SQL语句写到中间层了,大家明白就行了! 最后就是工厂三层 在实际大型项目团队开发的时候才会用得比较多,而单个人做中小项目的时候用工厂三层会很难做的,开发进度慢不说而且到后期客户要求修改的时候,会...

    XSS与CSRF两种跨站攻击总结

    SQL语句创建应用,于是SQL注入成了很流行的攻击方式。在这个年代,参数化查询[1]已经成了普遍用法,我们已经离 SQL注入很远了。但是,历史同样悠久的XSS和CSRF却没有远离我们。由于之前已经对XSS 很熟悉了,所以我对...

    网络工程人员优秀辞职报告.doc

    - 数据库优化:通过编写高效的SQL查询语句提高数据库性能,或者通过索引、分区等手段提升查询速度。 4. **网络工程相关技能**: - 网络规划与设计:包括网络拓扑设计、带宽规划、安全策略设定等。 - 硬件设备...

    基于SpringJDBC的轻量级ORM框架sborm.zip

    QueryBudiler,使得更多简单的单表查询可以通过对象组织查询、更改逻辑,避免过多去写相似性的SQL语句,减少DAO接口量。 三、一些亮点 1、Entity的设计:很多人看了也许会说,这个不是POJO,不是纯粹的Java ...

Global site tag (gtag.js) - Google Analytics