微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ms Access 数据库的 SQL 查询从相似 id 组查询访问数据库

如何解决Ms Access 数据库的 SQL 查询从相似 id 组查询访问数据库

下面是我在ms access中的表结构,

ID Stage_Name 时间
1 A 07:00
1 B 08:00
1 C 09:00
2 A 08:00
2 B 09:00
3 A 07:00

输出应检索尚未通过阶段 B 的所有记录。输出将是,

ID Stage_Name 时间
3 A 07:00

请帮助我?

解决方法

您可以使用not exists

select t.*
from t
where not exists (select 1
                  from t t2
                  where t2.id = t.id and
                         t2.stage_name = 'B'
                 );
,

您可以使用 not exists 和相关子查询进行过滤。这个想法是为了确保在阶段 B 中没有相同 id 的较早记录:

select t.*
from mytable as t
where not exists (
    select 1 
    from mytable as t1 
    where t1.id = t.id and t1.stage_name = 'B' and t1.time < t.time
)

这符合您对问题的描述(尚未通过阶段 B 的记录),但与您想要的结果不符。

如果您想排除 id 有任何 B 的记录,甚至稍后,您可以从子查询中删除条件 t1.time < t.time

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。