不太清楚如何正确地问这个问题,这可能是我的问题的一部分。存在一个包含许多类似记录的数据库,这些记录由一个称为“优先级”的列来区分。我想获取具有相同“类型”和“项目”ID 的具有更高优先级的记录。例如,该表如下所示:
id project_id type_id priority
1 66 14 0
2 66 14 10
3 66 16 0
目前程序选择通过项目和类型:
Select * FROM table WHERE project_id = 66;
然后它循环遍历结果并在存在多个相同记录时丢弃较低优先级的记录type_id
。有没有办法通过选择来做到这一点?
理想的结果集是:
id project_id type_id priority
2 66 14 10
3 66 16 0
它丢弃了较低优先级的 type_id 14 记录。表中可能有超过 2 个具有相同 type_id 的项目。