1.如何用SQL语句把一个表里面某字段内有相同的记录查询出来
现在有一个表 有三列 分别是tel,name,addr
我现在要查询name一样的 
具体T-SQL语句要怎么写 求助
就是name这个列有很多记录在数据库里面 这些人有很多哈 就是如何把这些同名同姓的记录找出来

只显示name
select name from tb group by name having count(*) > 1
显示所有数据
select * from name in (select name from tb group by name having count(*) > 1)

2.T1表有F1,F2,F3字段 T2表有F1,F4字段 查出T1表里所有有重复的记录,如下
select * from T1 where F1 in(select F1 from T1 group by F1,F2,F3 having count(*)>1)

3.怎样用SQL语句在一个表里找出具有两个相同属性的记录?
悬赏分:5 - 解决时间:2008-12-15 17:11 
比如说这个表里有属性:姓名,学号,专业,籍贯等。那我现在要找出专业和籍贯都相同的学生记录。如何用SQL语句实现?
假设相同的专业名为A,籍贯名为B,表名为TAB 
问题补充:不好意思,忘了说一个条件。
就是事先不知道有哪些记录里的专业和籍贯是相同的,A和B是未知的,即有可能A和B有多种取值情况,而现在要全部把它们查找出来。
不是专业=籍贯,而是不同的记录中专业相同AND籍贯相同的,比如说专业都是计算机的,籍贯都是福建福州的;或者专业都是数学的,籍贯都是福建厦门的。
答案:
select 专业,籍贯 , count(*) from tab
group by 专业,籍贯
是专业,籍贯相同的学生记录数

select 专业,籍贯 , count(*) from tab
group by 专业,籍贯 having count(*)>1
是专业,籍贯相同的学生记录数>1条的

select 姓名,学号 , 专业,籍贯 from tab 
order by 专业,籍贯 
就是明细

若你想查某个专业 如 A 和籍贯 如 B的话,
select * from TAB where 专业='A'and 籍贯='B'

例如有如下表结构和值
table
fid   name sex
1     a      男
2     b      男
3     c      女
4     d      女
5     a      男
6     b      男
方案一:distinct
select distinct name from table
得到结果:
name
a
b
c
d
实现效果,那如果要同时打开其它记录呢?再试试
select distinct name,id from table
测试没什么效果,查下得知,这样实际是要name和id字段都重复才被筛选。继续查找可得如下方法:
方案二:group by
select *, count(distinct name) from table group by name

Oracle下测试失败,据说MYSQL下通过,不管,继续思考....

select *, count(distinct name) from table group by name 在MYSQL测试失败

翻翻书,试试
select min(fid),name,sex from table group by name
成功,现实如下结果:
fid   name sex
1     a      男
2     b      男
3     c      女
4     d      女

MYSQL测试,没有效果

继续思考,如果要打开所有记录,不指定字段用(*),貌似这方法就不行了!
select * from table where fid in(Select min(fid) FROM table group by name)
测试成功
fid   name sex
1     a      男
2     b      男
3     c      女
4     d      女
方案三:
本来已经完了,突然想起前几天在网上查了查询数据中所有某字段重复的记录
select   *   from   table   where   name in(select   name   from   table   group   by   name     having   count(name)=2) 
得到如下结果:
fid   name sex
1     a      男
2     b      男
5     a      男
6     b      男
以此类推:
select   *   from   table   where   name in(select   name   from   table   group   by   name     having   count(name)=1)
按道理说没问题,大家试试~~
再多的字段都全部现实。哎,原来如此简单!回顾网上方法distinct,Inner   Join等等,麻烦,而且有很大局限性.
总结如下:
select distinct name from table打开重复记录的单个字段
select * from table where fid in(Select min(fid) FROM table group by name)打开重复记录的所有字段值
select   *   from   table   where   name in(select   name   from   table   group   by   name     having   count(name)=1)打开重复任意次数的所有记录

4.

Sql Server里面如果没有设定主键而删除重复数据很麻烦:
一:保留重复记录中的一条记录,其他全部删除。
--1:建立临时表,把不重复的数据转存
select distinct * into #Tmp from 表名;
--2:删除原表数据
truncate table 表名;
--3:将数据导回
insert into 表名 select * from #Tmp;
--4:删除临时表
drop table #Tmp;

******************
如果是oracle的话,把 rowid 查出来,按照rowid删除就可以了。
select rowid,表名.* from 表名;
delete from 表名 where rowid != '刚才查询出的某个值'
commit;
******************

select post_content,post_title from wp_posts group by post_content,post_title having count(*)>1
先看看有多少重复的
假设你表中还有id的一个字段
select min(id),post_content,post_title from wp_posts group by post_content,post_title
这些选出来后你看看这些是否可以不删除
然后
delete from wp_posts where id not in (select min(id) from wp_posts group by post_content,post_title)

查询重复或不重复记录SQL语句相关推荐

  1. mysql查询学生成绩语句_查询每个学生的各科成绩sql语句

    展开全部 1.查询每个学生的各科成绩sql语句: select a.studentid,a.name,a.sex,v1.score as '语文',v2.score as '数学', v3.score ...

  2. 使用 Access 查询设计器轻松构造复杂 SQL 语句 (2)

    上一篇的 sql 语句蛮简单的,接下来,来看一个相对复杂的的场景.假设我们要编写一个查询,计算期间物料进出存的查询.需要用到 5 个表,将创建表的 sql 语句贴在下面,示例数据也已经上传到 gith ...

  3. mysql语句中怎么去重复_mysql中删除重复记录sql语句

    在sql中我们经常会碰到有重复的一些数据,下面我来介绍在mysql中删除重复记录的多种方法,有需要的朋友可参考参考. 删除重复记录方法一: 1. 新建一个临时表 代码如下 复制代码 create ta ...

  4. ORACLE百万记录SQL语句优化技巧

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  5. oracle中子查询的执行顺序是,Oracle sql语句执行顺序

    sql语法的分析是从右到左 一.sql语句的执行步骤: 1)语法分析,分析语句的语法是否符合规范,衡量语句中各表达式的意义. 2)语义分析,检查语句中涉及的所有数据库对象是否存在,且用户有相应的权限. ...

  6. Sql Server 优化 SQL 查询:如何写出高性能SQL语句

    1. 首先要搞明白什么叫执行计划? 执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条 ...

  7. MySQL中将多行查询结果合并为一行展示SQL语句书写

    写在前面 最近开发过程中,遇到一个需求是要将所查询的多条结果汇总成一条结果展示,由于之前没有接触过这方面的业务,所以经过一番折腾之后,解决了需求,这里特此记录一下,以供后续参考! 1.问题复现 这里以 ...

  8. mysql navicate查询_Mysql Navicate 基础操作与SQL语句 版本5.7.29

    SQL数据的增删改查:此部分所有SQL语句在navicat中与mysql命令行执行效果一样,只是mysql服务端在命令行执行,而navicat只是在客户端的图形化打开操作. 一.进入数据库 .连接数据 ...

  9. mysql查询sql中日期为当天的记录_SQL 查询当天,本月,本周的记录 sql 查询日期...

    SELECT * FROM 表 WHERE CONVERT(Nvarchar, dateandtime, 111) = CONVERT(Nvarchar, GETDATE(), 111)   ORDE ...

最新文章

  1. 如何写出正确的二分查找?——利用循环不变式理解二分查找及其变体的正确性以及构造方式...
  2. Spring范围代理
  3. Mathematica图片局部变色
  4. linux内核如何识别是进程间切换还是线程间切换?
  5. 63linux_nat网络原理图64Linux网络配置指令65配置实例
  6. RedisLockRegistry源码-redis分布式锁
  7. 事件---------2
  8. linux下简单的邮件配置
  9. node html响应头,nodejs 中http请求头,响应头
  10. 驱动级的自动按键_太牛了!业余单片机爱好者用DS3231制作自动亮度的4位数码管时钟...
  11. 微信小程序开源源码汇总
  12. textbox wpf 居中_WPF TextBox控件中文字实现垂直居中
  13. Hook技术第二讲,之虚表HOOK
  14. 普莱费尔密码(playfair)
  15. 如何批量修改文件名?教你一招,轻松解决
  16. C/C++输入未知组数据的方法,多行输入介绍
  17. 推荐你一款国产的倾斜摄影实景三维模型浏览器
  18. nemo 替换ubuntu 自带的文件管理器
  19. 大学物理--电磁辐射的量子理论部分
  20. NYOJ 171 聪明的聪聪

热门文章

  1. 人工智能与我们的世界
  2. Gem5模拟器,详解官网教程Event-driven programming(五)
  3. PAT 1085 PAT单位排行 (Microsoft_zzt)
  4. mj-trace 代码分析
  5. win10 系统网络图标只剩下飞行模式,没有wifi和本地连接 解决方法
  6. android 开放聊天室
  7. J2SE和J2EE的比较
  8. MP3文件格式(四)--XING VBRI 头部
  9. 【笔记】Linux 802.11n CSI Tool部分机翻
  10. Ubuntu五笔输入终极解决方案(Rime)