sql - SQLite 删除没有最大索引的行
问题描述
我已经尝试过搜索功能,最合适的结果是这样,它似乎不适用于我的情况(?!):
我有一张这样的桌子
parentassembly | "Index" | partumber
----------------- ------------ -------------
pA 1| _00| part1
pa 1| _00| part2
pa 1|_ab| part1
pa 1|_ab| part3
pa 1|_af| part1
pa 1|_af| part2
pa 1|_af| part3
pa 1|_af| part4
pa 2| |part12
pa 2|| part...
pa 2|....| .....
我只需要索引最高的父程序集和后续部分。
索引可以是数字或字母数字或空的。
如果我尝试链接中显示的方法,但改为进行计数,我不会得到与所有表行不同的数字
select count(*)
(...or delete r....)
from pa_save r left join
(select parentassembly, Max("Index") as maxindex
from pa_save
group by parentassembly
) rn
on r.ParentAssembly = rn.ParentAssembly = rn.maxindex
where rn.ParentAssembly is null;
我已经尝试过使用子查询,也没有归档不同的结果......
delete from pa_save
where parentassembly not in
(select parentassembly from pa_save where "Index" =
(select MAX("Index") from pa_save as pa_save2
where pa_save2.parentassembly = pa_save.parentassembly));
除此之外,它似乎不起作用,子查询需要无穷无尽的......
任何见解将不胜感激。
亲切的问候,
托拜厄斯
解决方案
您的第一个查询有几个语法异常。这是做你想做的事吗?
select r.*
from pa_save r join
(select parentassembly, Max("Index") as maxindex
from pa_save
group by parentassembly
) rn
on r.ParentAssembly = rn.ParentAssembly and
r."Index" = rn.maxindex;
推荐阅读
- javascript - 将音频作为多部分/缓冲区休息
- r - 是否有一个 R 函数通过重新排列表格来计算字符串
- amazon-web-services - 从 AWS Pinpoint 自定义通道向 AWS Lambda 发送消息
- python - slurm 集群上的 Python 作业,节点与核心
- python - How can I prevent user input from being shown on IDLE python
- javascript - 为什么 for... of 循环不会更改数组内的值,而常规 for 循环会?
- javascript - 未经检查的 runtime.lastError:无法访问 url 的内容。但我不需要访问该 URL 的内容
- selenium - 使用 selenium Python 滚动到无限加载页面的末尾
- postgresql - 如何将字典列表转换为字节流并将其加载到数据库
- python - map 在 python 中是如何工作的?