- 浏览: 409047 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (347)
- java基础 (58)
- ajax (10)
- s2sh (10)
- 版本控制 (4)
- 数据库 (34)
- 服务器 (4)
- 开发工具 (8)
- javascript (15)
- soockte (5)
- ext (2)
- 环境搭建 (7)
- struts2 (9)
- 找工作中的面试技巧 (2)
- 承接网站零活 (0)
- JNI+JONSE+OGNL (8)
- 性能优化 (4)
- Android开发 (5)
- xul (8)
- jquery (2)
- 线程 (3)
- jsp+jdbc (7)
- servlet (2)
- java对xml操作 (1)
- IO流的操作 (10)
- 项目开发前配置 (1)
- css (0)
- 上传、下载 (2)
- 知识探讨 (2)
- html (2)
- HQL (0)
- 工作技巧 (1)
- IT (1)
- Hibernate杂谈 (10)
- Spring杂谈 (35)
- DWR (5)
- JUnit测试 (3)
- EasyMock测试web (1)
- ibatis (6)
- maysql (5)
- C++ (0)
- 正则表达式(解剖) (1)
- 密码安全 (2)
- 上传 (1)
- socket (1)
- jni(java与c++结合) (1)
- jdk版本问题 (0)
- tomcat版本问题 (5)
- linux基本命令(初学) (7)
- linux项目发布 (1)
- 3年的经验总结 (1)
- 加解密 (2)
- 高级java阶段 (2)
- java内存分区 (1)
- 浏览器 (1)
- 职业规划 (1)
- 管理 (5)
- java语音 (1)
- SSH (1)
- jsp (3)
- extjs (1)
- uml (2)
- 加密 (1)
- web (2)
- Ant (1)
- 自述 (1)
- Linux (1)
- ssh源码解剖 (1)
- 代码优化 (1)
- 设计模式 (0)
- xml (2)
- JOSN (1)
- scala (0)
- hadoop (0)
- spark (0)
- hana (1)
- shior (1)
- java Word (6)
- java PDF (4)
- java Excel (0)
最新评论
-
高级java工程师:
ztao2333 写道谢谢。收藏下这个总结。呵呵
温习jdk和tomcat -
ztao2333:
大写的,不是大学的
温习jdk和tomcat -
ztao2333:
谢谢。收藏下这个总结。
温习jdk和tomcat -
the_small_base_:
你好,可以提供调用方法吗?需要的Jar,能发下源码吗?谢谢
java实现语音 -
高级java工程师:
文思涌动 写道楼主新年好。可否再传一遍给我,我没有收到, 不清 ...
s2sh整合
比如现在有一人员表(表名:peosons) 若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来 select p1.* from persons p1,persons p2 where p1.idp2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address = p2.address 可以实现上述效果. 几个删除重复记录的SQL语句 1.用rowid方法 2.用group by方法 3.用distinct方法 1.用rowid方法 据据oracle带的rowid属性,进行判断,是否存在重复,语句如下: 查数据: select * from table1 a where rowid !=(select max(rowid) from table1 b where a.name1=b.name1 and a.name2=b.name2......) 删数据: delete from table1 a where rowid !=(select max(rowid) from table1 b where a.name1=b.name1 and a.name2=b.name2......) 2.group by方法 查数据: select count(num), max(name) from student --列出重复的记录数,并列出他的name属性 group by num having count(num) >1 --按num分组后找出表中num列重复,即出现次数大于一次 删数据: delete from student group by num having count(num) >1 这样的话就把所有重复的都删除了。 3.用distinct方法 -对于小的表比较有用 create table table_new as select distinct * from table1 minux truncate table table1; insert into table1 select * from table_new; 查询及删除重复记录的方法大全 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) (二) 比方说 在A表中存在一个字段“name”, 而且不同记录之间的“name”值有可能会相同, 现在就是需要查询出在该表中的各记录之间,“name”值存在重复的项; Select Name,Count(*) From A Group By Name Having Count(*) > 1 如果还查性别也相同大则如下: Select Name,sex,Count(*) From A Group By Name,sex Having Count(*) > 1 (三) 方法一 declare @max integer,@id integer declare cur_rows cursor local for select 主字段,count(*) from 表名 group by 主字段 having count(*) >; 1 open cur_rows fetch cur_rows into @id,@max while @@fetch_status=0 begin select @max = @max -1 set rowcount @max delete from 表名 where 主字段 = @id fetch cur_rows into @id,@max end close cur_rows set rowcount 0 方法二 "重复记录"有两个意义上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定 重复或都重复可以忽略。 1、对于第一种重复,比较容易解决,使用 select distinct * from tableName 就可以得到无重复记录的结果集。 如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除 select distinct * into #Tmp from tableName drop table tableName select * into tableName from #Tmp drop table #Tmp 发生这种重复的原因是表设计不周产生的,增加唯一索引列即可解决。 2、这类重复问题通常要求保留重复记录中的第一条记录,操作方法如下 假设有重复的字段为Name,Address,要求得到这两个字段唯一的结果集 select identity(int,1,1) as autoID, * into #Tmp from tableName select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID select * from #Tmp where autoID in(select autoID from #tmp2) 最后一个select即得到了Name,Address不重复的结果集(但多了一个autoID字段,实际写时可以写在select子句中省去此列) (四) 查询重复 select * from tablename where id in ( select id from tablename group by id having count(id) > 1
发表评论
-
SQL总结存储过程
2017-02-16 10:13 390概念 存储过程(Stored Procedure):已预编译 ... -
oracle设置定时任务job调度执行存储过程或pl/sql代码块
2017-02-16 09:53 433目前oracle数据库设置定时任务job调度一般有两种方式,分 ... -
sql大全
2013-07-12 19:02 1033经典SQL语句大全 一、基础 1、说明: ... -
Linux安装mysql——源码安装
2013-06-05 09:17 7891.假设已经有mysql-5.5.10.tar.gz以及cma ... -
hql语句集合
2013-04-21 19:13 1075/** * */ package com.b510 ... -
oracle命令导入dmp文件与给用户受权
2012-05-03 15:57 1014创建账号:CREATE USER vdrs IDENTIFIE ... -
oracle对日期进行操作
2012-03-19 15:41 1249一下心血来潮,把部分Oracle对时间的一些处理,整理了一下, ... -
数据库驱动大全
2011-12-26 09:47 929经常因为链接字符串记不住或者记错的原因浪费时间,终于有时间把常 ... -
用JSP导出ORACLE的数据表DDL
2011-12-08 10:47 1108EXPDDL.JSP <%@ page cont ... -
jsp脚本实现本分数据库
2011-12-08 10:44 887JSP导出Oracle数据表是一个在开发应用时的常用的操作,那 ... -
oracle创建id自增及相关增删改查操作
2011-11-21 16:46 987新建下载权限记录表 DOWNLOADPOPE_TAB ... -
java.sql.SQLException: Io 异常: The Network Adapter could not establish the connec
2011-10-28 15:43 1279WARN: SettingsFactory,103 - Cou ... -
oracle安装及使用
2011-10-16 23:50 920安装后数据库 1.使用plsql打开,一般选项 口 ... -
递归数
2011-10-10 17:30 1110有的情况下,我们需要用递归的方法整理数据,这才程序中很容易 ... -
mysql中递归树状结构
2011-10-10 17:20 11379在Oracle 中我们知道有一个 Hierarchic ... -
级联删除和级联修改
2011-06-22 14:08 2814曾经因为级联删除的问题浪费了N多时间,顾此在这里写下小小心得, ... -
mysql解决乱码问题?
2011-06-15 14:33 829mysql数据库,乱码解决 ... -
MySql
2011-06-14 16:12 8431.安装之后 2.创建数据库 s2sh(库名) creat ... -
数据库死锁的解释?以及什么是死锁
2011-04-25 10:41 854什么是数据库死锁 每个使用关系型数据库的程序都可能 ... -
oracle控制约束
2011-04-11 17:19 746Oracle约束的启用和停用 ...
相关推荐
sql 查出一张表中重复的所有记录数据 1.表中有id和name 两个字段,查询出name重复的所有数据 select * from xi a where (a.username) in (select username from xi group by username having count(*) > 1) 2、...
在Oracle数据库中,当需要将一个表的字段值更新到另一个表时,通常可以使用`MERGE INTO`语句来实现。`MERGE INTO`是一个非常强大的SQL操作,它结合了`INSERT`、`UPDATE`和`DELETE`的功能,允许你在匹配条件的基础上...
首先,给出的SQL语句是用于查找`user_table`表中`user_name`字段上的重复记录。以下是完整的SQL查询: ```sql SELECT user_name, COUNT(*) AS count FROM user_table GROUP BY user_name HAVING count > 1; ``` 这...
数据库中有个大表,需要查找其中的名字有重复的记录id,以便比较。如果仅仅是查找数据库中name不重复的字段,很容易 代码如下:SELECT min(`id`),`name` FROM `table` GROUP BY `name`; 但是这样并不能得到说有重复...
在SQL Server数据库设计中,有时候会遇到一个表的两个字段需要关联到同一个表的情况,这通常发生在需要通过多个关联字段获取同一张表的不同信息时。本文将深入探讨如何解决这个问题,以及提供相应的代码示例。 首先...
数据库中users表,包含u_name,u_pwd两个字段,其中u_name存在重复项,现在要实现把重复的项删除! [分析] 1、生成一张临时表new_users,表结构与users表一样; 2、对users表按id做一个循环,每从users表中读出一个...
在处理数据时,可能会遇到表中有重复记录的情况,这时需要进行去重处理。 ```sql SELECT a.* FROM taxation_data a JOIN ( SELECT social_credit_code, MAX(base_id) AS best_history_data FROM taxation_data ...
在Excel中,BOM(Bill of Materials)通常指的是物料清单,是制造业中用于记录产品构成的层次结构表。本主题将深入探讨如何高效地合并多个BOM表到一个单一的Excel工作表中,以实现数据整合和管理。下面将详细阐述这...
这行语句会将`articles`表中的所有记录插入到`newArticles`表中,如果目标表中已有相同的数据,那么默认情况下,MySQL将会抛出错误,不允许重复键值的插入。 然而,如果只需要迁移特定字段,我们可以指定字段列表来...
通常,树结构可以通过自引用的方式实现,即一张表中有一个字段指向自身的ID,形成父节点与子节点的关系。在本例中,我们可能有两张表,一张用于存储父节点信息,另一张用于存储子节点信息。为避免ID重复,我们需要...
主键是表中的一个或多个字段,它的值用于惟一地标识表中的某一条记录。一个表不能有多个主关键字,并且主关键字的列不能包含空值和重复值。主关键字是可选的,可以在 CREATE TABLE 或 ALTER TABLE 语句中定义。 ...
* 索引的关键字段值或索引表达式值与记录号(物理顺序)对应的内容又称之为一张“对照表”,用一个索引标识来标记。 索引的类型: * 主索引(Primary Indexes):每张表只能有一个主索引, 一般为表的关键字或索引...
在一张表中,主键是用来定义每条记录的唯一标识,这意味着主键的值在该表中必须是唯一的,并且不能为NULL。例如,在学生表中,学号可以作为主键,因为每个学生都有唯一的学号。主键的约束确保了任何试图插入重复学号...
触发器在插入新记录时,会检查对应表中是否存在相同的记录,如果不存在,则将新记录插入到另一张表中,同时避免了重复插入和无限递归的问题。UPDATE触发器则在T1表的value字段被更新时,检查T2表中是否有相应的记录...
数据库设计规范化的五个要求样本分别是:表中应当避免可为空列、表不应当有重复值或者列、表中记录应当有一种唯一标记符、数据库对象要有统一前缀名和最后一个未体现的规定。这些规定都是数据库设计规范化的重要组成...
单表存储简化了查询和维护,但可能会导致数据冗余,因为同级的省或市信息可能会在多个记录中出现。 2. **四张表存储**: 这种方法将四级地址信息拆分为四个独立的表:省份、城市、区域和街道。每个表都有自己的...
- **`example.setDistinct(true)`**:设置是否去除重复记录。 - **`criteria.andXxxIsNull`**:设置字段为空的条件。 - **`criteria.andXxxIsNotNull`**:设置字段不为空的条件。 - **`criteria.andXxxEqualTo(value...
先按XH字段排序,表SCORE中的XH字段值相同的记录排到一起,假设使用一张临时表TEMP保存排序后的表记录。 (2)分组、统计过程。对临时表TEMP的记录按块分组,XH字段值相同的记录分在一组,共分为三组。 (3)分类...