表:
          CREATE TABLE Company_Info
          (
          ?? id? smallint IDENTITY(1,1) ,
          ???username varchar(50) null,
          ???password varchar(50) null,
          ???PRIMARY KEY(id)
          )

          思路

          ------------顯示哪些人相同,相同的數量是多少?

          select convert(int,SQRT(count(*))) as countU ,a.username from Company_Info a left join Company_Info b on

          a.username=b.username and a.password=b.password

          group by a.username having SQRT(count(*)) >1

          ?

          ----------取出所有相同的記錄到一個表MyRepeat


          select c.* into MyRepeat from Company_Info c where c.username in(
          select a.username from Company_Info a left join Company_Info b on
          a.username=b.username and a.password=b.password
          group by a.username having SQRT(count(*)) >1)

          ?

          ?

          -----------在表MyRepeat中找出每個相同記錄的除最大id之外


          select a.id from MyRepeat a where id not in(select max(b.id) from MyRepeat b group by b.username)--得出所有需要刪除的id

          -----------
          最后得出

          delete Company_Info where id in (select h.id from (select c.* from Company_Info c where c.username in(select a.username from Company_Info a left join Company_Info b on a.username=b.username and a.password=b.password group by a.username having SQRT(count(*)) >1) ) h where h.id not in( select max(l.id) from (select k.id,username from (select f.* from Company_Info f where f.username in(select g.username from Company_Info g left join Company_Info o on g.username=o.username and g.password=o.password group by g.username having SQRT(count(*)) >1)) k ) l group by l.username))

          ?




          ?

          posted on 2006-10-18 17:04 jackstudio 閱讀(1658) 評論(0)  編輯  收藏 所屬分類: Database
          主站蜘蛛池模板: 宜兴市| 朝阳市| 东乡县| 平和县| 武隆县| 白沙| 兴安盟| 宜黄县| 孝昌县| 南川市| 莲花县| 东港市| 灵石县| 宝鸡市| 凤台县| 毕节市| 周宁县| 巴塘县| 益阳市| 马关县| 开原市| 南漳县| 蓬安县| 邯郸县| 芜湖县| 当阳市| 香格里拉县| 偃师市| 保靖县| 孟村| 新疆| 邵阳市| 贺兰县| 贵德县| 兴文县| 永泰县| 鄂托克旗| 隆林| 神池县| 宁陕县| 蕲春县|