sql not access数据库文件只有一个表A,有60000多条记录结构如下:ID 地址 地区 1 厦门 华东2 泉州 华东3 厦门 华东4 深圳 华南5 深圳 华南6 厦门 华东 .因为存在重复记录,比如 ID:1,3,4,5所以使用以下
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/12 06:12:40
![sql not access数据库文件只有一个表A,有60000多条记录结构如下:ID 地址 地区 1 厦门 华东2 泉州 华东3 厦门 华东4 深圳 华南5 深圳 华南6 厦门 华东 .因为存在重复记录,比如 ID:1,3,4,5所以使用以下](/uploads/image/z/5671484-44-4.jpg?t=sql+not+access%E6%95%B0%E6%8D%AE%E5%BA%93%E6%96%87%E4%BB%B6%E5%8F%AA%E6%9C%89%E4%B8%80%E4%B8%AA%E8%A1%A8A%2C%E6%9C%8960000%E5%A4%9A%E6%9D%A1%E8%AE%B0%E5%BD%95%E7%BB%93%E6%9E%84%E5%A6%82%E4%B8%8B%EF%BC%9AID+%E5%9C%B0%E5%9D%80+%E5%9C%B0%E5%8C%BA+1+%E5%8E%A6%E9%97%A8+%E5%8D%8E%E4%B8%9C2+%E6%B3%89%E5%B7%9E+%E5%8D%8E%E4%B8%9C3+%E5%8E%A6%E9%97%A8+%E5%8D%8E%E4%B8%9C4+%E6%B7%B1%E5%9C%B3+%E5%8D%8E%E5%8D%975+%E6%B7%B1%E5%9C%B3+%E5%8D%8E%E5%8D%976+%E5%8E%A6%E9%97%A8+%E5%8D%8E%E4%B8%9C+.%E5%9B%A0%E4%B8%BA%E5%AD%98%E5%9C%A8%E9%87%8D%E5%A4%8D%E8%AE%B0%E5%BD%95%2C%E6%AF%94%E5%A6%82+ID%3A1%2C3%2C4%2C5%E6%89%80%E4%BB%A5%E4%BD%BF%E7%94%A8%E4%BB%A5%E4%B8%8B)
sql not access数据库文件只有一个表A,有60000多条记录结构如下:ID 地址 地区 1 厦门 华东2 泉州 华东3 厦门 华东4 深圳 华南5 深圳 华南6 厦门 华东 .因为存在重复记录,比如 ID:1,3,4,5所以使用以下
sql not
access数据库文件只有一个表A,有60000多条记录
结构如下:
ID 地址 地区
1 厦门 华东
2 泉州 华东
3 厦门 华东
4 深圳 华南
5 深圳 华南
6 厦门 华东
.
因为存在重复记录,比如 ID:1,3,4,5
所以使用以下语句执行删除重复的记录,保留一条,但发现 NOT IN 的效率很慢,居然要等上10多分钟,怎办?有没有更好的办法
delete from cidz where id NOT in (select max(id) from cidz group by 地址)
sql not access数据库文件只有一个表A,有60000多条记录结构如下:ID 地址 地区 1 厦门 华东2 泉州 华东3 厦门 华东4 深圳 华南5 深圳 华南6 厦门 华东 .因为存在重复记录,比如 ID:1,3,4,5所以使用以下
NOT IN速度当然很慢,因为这样会存在两个全表检索的情况,使用NOT EXISTS会快很多.
delete from t_b where exists (select 1 from t_b a where isnull(a.cost,0) > isnull(t_b.cost,0) and a.cost t_b.cost)
DELETE FROM CIDZ WHERE EXISTS (SELECT 1 FROM CIDZ A WHERE A.ID > CIDZ.ID)
---------这个删除之后,会只剩下这个表中ID最大的一行,没有别的连接条件了么?如果这么已删除,表中只剩下一行了,我觉得你的意思是不是只留下每个地址分组后ID最大的一行啊?