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 |