CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

关于SQL SERVER 的查询

楼主grievefish()2000-10-25 10:39:00 在 MS-SQL Server / 基础类 提问

我的问题是这样的:  
        有一个表(TEST),有一个ID和NAME   字段  
        我想查询NAME字段有内容重复的记录。 问题点数:45、回复次数:24Top

1 楼jiffy(小李飞刀)回复于 2000-10-25 11:25:00 得分 0

檢查select   Sum(name)   from   test    
  與   select   sum(DISTINCT   name)   from   test    
  的返回值是否相等。Top

2 楼grievefish()回复于 2000-10-25 11:59:00 得分 0

首先感谢您的回答!  
     
  但是您的回答并不是我想的!  
  我的意思是:我想把NAME有重复值的记录查出来,而没有重复的不显示,Top

3 楼tanghuan()回复于 2000-10-25 12:09:00 得分 10

select   *  
          from   test  
          where   name   in   (  
                        select   name  
                                from   test  
                                group   by   name  
                                having   count(*)>1  
                        )Top

4 楼jiffy(小李飞刀)回复于 2000-10-25 12:52:00 得分 0

select   distinct   *   from   test   a    
  where   (select   count(*)   from   test   b   where   a.name=b.name   )   >1Top

5 楼lyxinfo(雒)回复于 2000-10-25 13:50:00 得分 0

select   name  
    from   tableneme  
    where   name   is   not   null  
    group   by   name  
    having   count(*)   >   1  
  如果想显示所有字段,就用上段sql在作为自查询结果就行了。Top

6 楼pjy(古虫)回复于 2000-10-25 14:11:00 得分 0

    select   distinct   A.name   from   test   A,test   B   where   (A.name   =   B.name   and   A.ID   <>   B.id)   Top

7 楼masterkey()回复于 2000-10-25 14:34:00 得分 0

这个嘛,一定要用到Having子句,下面这句包你满意!  
      select   Name   from   test  
          group   by   Name  
          having   count(*)>1    
  或:  
    select   *   from   test  
          where   Name   in   (select   Name   from   test   group   by   Name   having   count(*)>1)Top

8 楼masterkey()回复于 2000-10-25 14:41:00 得分 0

这个嘛,一定要用到having子句,下面这两个包您满意:  
      select   name   from   test   group   by   name   having   count(*)>1  
       
      select   *   from   test  
      where   name   in   (select   name   from   test   group   by   name   having   count(*)>1)Top

9 楼w102272(Wonder)回复于 2000-10-25 15:07:00 得分 0

这个SQL   找出所有重复的NAME:  
      SELECT   name   FROM   test   GROUP   BY   name   HAVING   (COUNT(name)   >   1)  
   
  如果要找出所有重复的记录,需要用子查询:  
  SELECT   *   FROM   test    
      WHERE   (name   IN  
                      (SELECT   name   FROM   tab_test   GROUP   BY   name   HAVING   (COUNT(name)   >   1))  
                  )  
  Top

10 楼w102272(Wonder)回复于 2000-10-25 15:15:00 得分 0

这个SQL   找出所有重复的NAME:  
      SELECT   name   FROM   test   GROUP   BY   name   HAVING   (COUNT(name)   >   1)  
   
  如果要找出所有重复的记录,需要用子查询:  
  SELECT   *   FROM   test    
      WHERE   (name   IN  
                      (SELECT   name   FROM   test   GROUP   BY   name   HAVING   (COUNT(name)   >   1))  
                  )  
  Top

11 楼grievefish()回复于 2000-10-25 15:40:00 得分 0

忠心感谢大家!  
  热泪盈眶!  
  大家的回答我都实验过,全都好使;  
  除了"lyxinfo"略有小疑,  
  再次感谢!  
  Top

12 楼dqj()回复于 2000-10-25 23:03:00 得分 0

:Top

相关问题

  • SQL SERVER 查询
  • SQL server 日期查询
  • SQL SERVER查询故障~~
  • SQL Server的连接查询???
  • SQL SERVER查询请教.
  • 请问sql server “sql查询分析器”
  • SQL Server分布式数据查询
  • SQL Server子查询,请帮助!!!!!!!!!!
  • sql server怎么跨库查询?
  • 两个日期间的查询(sql server)!

关键词

  • 查询
  • 字段
  • sql
  • group
  • count
  • 记录
  • 感谢
  • distinct
  • from test
  • 回答

得分解答快速导航

  • 帖主:grievefish
  • tanghuan

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo