我使用下面的查询,它返回正确的输出。我想进一步扩展这个查询,我不知道怎么能这样做。
我有两张表 history_query 和 tb_MA
History_query表架构
ID Verantwortlich Role Error_text
[Contain UserName] (Can be User_name Or Catagories)
15 US1 10 ENG-PL zxcv
7 US3 wxyz
10 US3 xyz
20 US2 07 ROB lekd
9 US1 wer
20 10 ENG-PL zlcv
TB_MA TAble Schema
UserName Team Skills
US1 10 ENG-PL
US2 07 ROB
US3 10 ENG-PL
在我的访问表单中,我有一个组合框,用户可以在其中选择类别' 10 ENG-PL'。
基于此值首先,我想找到TB_MA中有多少用户,而不是从history_query中找到用户名出现在列' Verantwortlich'中的所有数据。或者在“角色”栏目中或类别存在' 10 ENG-PL'
基于上表数据
最终输出我需要什么
ID Verantwortlich Role Error_text
15 US1 10 ENG-PL zxcv
7 US3 wxyz
10 US3 xyz
9 US1 wer
20 10 ENG-PL zlcv
我使用的查询是
SELECT *
FROM history_query left JOIN tb_MA ON history_query.Role = tb_MA.Team
WHERE (((history_query.verantwortlich) IN (Select [MA-Kennung] from tb_MA
where team = '10 ENG-PL')))
根据我的上述查询,它会返回以下输出
ID Verantwortlich Role Error_text
15 US1 10 ENG-PL zxcv
10 US3 xyz
提供一些我可以学习此类查询的链接。我总是坚持这种问题。
答案 0 :(得分:1)
我在下面的查询中找到了答案。
SELECT *
FROM history_query LEFT JOIN tb_MA ON history_query.verantwortlich = tb_MA.Team
WHERE ( ((history_query.verantwortlich) IN (Select [MA-Kennung] from tb_MA where team = '10 ENG-PL') )
OR history_query.Role ='10 ENG-PL' OR ((history_query.Role) IN (Select [MA-Kennung] from
tb_MA where team = '10 ENG-PL') ) );
欢迎任何其他建议。