SQL 查找重復記錄(轉)

          文章來自此人博客:http://hi.baidu.com/zg110/blog,在這里表示感謝!
          表stuinfo,有三個字段recno(自增),stuid,stuname

          建該表的Sql語句如下:

          CREATE TABLE [StuInfo] (
          [recno] [int] IDENTITY (1, 1) NOT NULL ,
          [stuid] [varchar] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
          [stuname] [varchar] (10) COLLATE Chinese_PRC_CI_AS NOT NULL
          ) ON [PRIMARY]
          GO

          1.--查某一列(或多列)的重復值(只能查出重復記錄的值,不能整個記錄的信息)
          --如:查找stuid,stuname重復的記錄
          select stuid,stuname from stuinfo
          group by stuid,stuname
          having(count(*))>1

          2.--查某一列有重復值的記錄(這種方法查出的是所有重復的記錄,也就是說如果有兩條記錄重復的,就查出兩條)
          --如:查找stuid重復的記錄
          select * from stuinfo
          where stuid in (
          select stuid from stuinfo
          group by stuid
          having(count(*))>1
          )

          3.--查某一列有重復值的記錄(只顯示多余的記錄,也就是說如果有三條記錄重復的,就顯示兩條)
          --這種方成績的前提是:需有一個不重復的列,本例中的是recno
          --如:查找stuid重復的記錄
          select * from stuinfo s1
          where recno not in (
          select max(recno) from stuinfo s2
          where s1.stuid=s2.stuid
          )

           

          posted on 2007-06-19 17:13 liujg 閱讀(337) 評論(0)  編輯  收藏 所屬分類: 數據庫

          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          boddiy

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 伊宁市| 日喀则市| 汾阳市| 荔波县| 信阳市| 行唐县| 会宁县| 郯城县| 祁连县| 宜都市| 淮南市| 嘉祥县| 溆浦县| 许昌县| 青龙| 金平| 张家界市| 安丘市| 扶风县| 遵化市| 潮州市| 石台县| 塘沽区| 永德县| 信宜市| 巴里| 比如县| 大方县| 莆田市| 南华县| 河西区| 峨眉山市| 晋州市| 昌乐县| 儋州市| 青浦区| 阿坝| 承德市| 澄迈县| 澄城县| 周至县|