Office中国论坛/Access中国论坛

标题: 怎样删除表中的记录?急!急!急! [打印本页]

作者: andrewzeng    时间: 2006-5-25 18:58
标题: 怎样删除表中的记录?急!急!急!
现在要一个表,如

1             a

1              b

2              c

3              d

3              d

3              d

如何变成

1            a                 或          1          b

2            c                                2         c

3              d                             3           d

其实我就想把第一列的重复数据去掉(一个1和两个3)。我该用什么方法来做才行呢?谢谢

[此贴子已经被作者于2006-5-25 10:59:21编辑过]


作者: 情比金坚    时间: 2006-5-25 19:43
查询分组
作者: andrewzeng    时间: 2006-5-25 19:51
谢谢您的帮助,但能否把方法说得具体些呢?我是新手,不是很能理解

[此贴子已经被作者于2006-5-25 11:53:06编辑过]


作者: nxjswt    时间: 2006-6-5 21:43
分组生成新表,删除查询第一个记录,在追加剩余记录到新表!
作者: wwwwa    时间: 2006-6-5 22:15
思路:增加自增字段,SQL语句:

SELECT a.*
FROM b105z2 AS a
WHERE  id in(select top 1 id from b105z2 b where a.dd1=b.dd1 order by id );

or

SELECT a.*
FROM b105z2 AS a
WHERE  id in(select top 1 id from b105z2 b where a.dd1=b.dd1 order by id desc);

or

SELECT a.*
FROM b105z2 AS a
WHERE not exists(select * from b105z2 b where a.dd1=b.dd1 and a.id>=b.id+1);


or

SELECT a.*
FROM b105z2 AS a
WHERE not exists(select * from b105z2 b where a.dd1=b.dd1 and a.id<b.id);




or

delete a.*
FROM b105z2 AS a
WHERE not exists(select * from b105z2 b where a.dd1=b.dd1 and a.id<b.id);

or

delete  a.*
FROM b105z2 AS a
WHERE not exists(select * from b105z2 b where a.dd1=b.dd1 and a.id>=b.id+1);


[此贴子已经被作者于2006-6-5 16:04:16编辑过]






欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3