求教,急!sql语句:如何删除access中前500000万条数据?

来源:百度知道 编辑:UC知道 时间:2024/05/30 18:44:00
就是说我的access表里面有150多万条数据,我现在想删除前50万条,手动选择太慢了,想用sql写,但是又不会命令,哪位大大知道的哈!
2楼的方法是非常的慢。另外补充一下,没有id,添加结果告诉我数据溢出,我很无语了。
没有id,也不是随意删除,就是删前50万条数据行
还是不行啊,为什么选中前50万只要select top 500000 * into newtable from table1 就行了,而删除却这么麻烦呢?

不麻烦啊!
DELETE TABLE1 WHERE exists (SELECT top 500000 * FROM TABLE1 a where a.字段1=table1.字段1 and a.字段2=table1.字段2)

请注意字段1和字段2是可以唯一确定记录的字段组合,可以是一个,两个,或多个.起到表中ID的作用.

Access能放下那么多数据吗?

500000条差不多就不行了。
-------------
DELETE FROM tablename WHERE field IN (SELECT top 500000 field FROM tablename)

其中tablename是表名,field是其中任意的一个字段名。

有关这个命令是不是会卡死的问题或者需要多久才能执行完……我不知道……

sql="select * from biao"
rs.open sql,conn,1,3
if rs.recordcount>0 then
for i=0 to 500000
id=rs("id")
sql="delete * from biao where id="&id
rs1.open sql,conn,1,3
next
end if
id 替换成你没有重复的字段

我感觉你没有说清楚....