delete问题,请位指点,谢谢
怎么样用语句删除掉表中完全相同的两条句录中的一条,而不是先把两条记录中全删除再新插入一条同样的记录。有办法吗?请各位指点下,谢谢。 问题点数:30、回复次数:10Top
1 楼good2speed(Goodspeed)回复于 2005-06-18 12:29:03 得分 0
找identity,然后删除Top
2 楼lxzm1001(*~悠悠蓝星梦~*)回复于 2005-06-18 12:44:08 得分 10
select distinct * into #t from tablename
delete tablename
insert tablename select * from #tTop
3 楼hsj20041004(光芒)回复于 2005-06-18 12:54:12 得分 5
alter table tablename add id int identity(1,1)
delete from tablename a where exists(select * from tablename where a.id<id and a.col1=col1)
alter table drop cloumn idTop
4 楼shenen(阿华)回复于 2005-06-18 15:17:10 得分 10
select distinct * into #s from tablename
delete tablename
insert tablename select * from #s
--------这样就不会有完全相同的一列.Top
5 楼tanger104753507(探戈)回复于 2005-06-18 22:42:51 得分 0
谢谢各位,其实我要删的记录是在一个view中的,因此无法用上面的方面,再指点下?Top
6 楼wangdehao(找找找(现在很幸福))回复于 2005-06-18 23:10:33 得分 0
如果是view的话,楼主可以选择distinct 过滤掉
如果要删的话,还是要通过基本表删的Top
7 楼tanger104753507(探戈)回复于 2005-06-19 23:19:16 得分 0
字段里面有二进制长字段型,不能用distinctTop
8 楼pingdan_yang(疯子痒)回复于 2005-06-20 00:19:25 得分 0
支持(找找找)的说法。Top
9 楼Navywang917(狼泪)回复于 2005-06-20 09:38:29 得分 5
给表增加一个id为identity型的列
delete table1 from table1 a ,table1 b
where a.id=b.id and a.id>b.id
Top
10 楼jinfeiyang(机会是给有充分准备的人)回复于 2005-06-20 12:13:29 得分 0
alter table add column id_num indentity(int,1,1)
delete from table where id_num =(select max(id_num), table.* group by table.*)
alter table drop column id_num
Top




