使用And Statement

时间:2015-09-10 19:53:00

标签: sql ms-access

人,

我拼命地试图做一个看起来很简单的查询,但是我无法在凌晨4点30分掌握。也许有人可以提出一些关于我做错的建议。

任务:我有两个表,一个是系统列表,另一个是证书列表。我想确保列出所有系统和任何证书,其中Z85在一列中,Z86在另一列中。当我尝试左边连接访问时,我没有得到表1中的所有行,但我理解为什么。我只是不知道如何正确地发表AND语句。

我正在使用Microsoft访问来了解它。

有人可以帮忙吗?

这是我的(失败)尝试..

SELECT 
  u_AllSubs.SubSystem, 
  ul_ZenCerts.[Date Accepted by Client PMT Rep] 
FROM (u_AllSubs 
LEFT JOIN ul_ZenCerts ON ((u_AllSubs.SubSystem = ul_ZenCerts.Subsystem) AND ((ul_ZenCerts.[Certificate Template]) Like "*Z85*")) 
LEFT JOIN (ul_ZenCerts AS ul_ZenCerts_1 ON ((u_AllSubs.SubSystem = ul_ZenCerts_1.Subsystem) AND ((ul_ZenCerts_1.[Certificate Template]) Like "*Z86*")));

1 个答案:

答案 0 :(得分:0)

这可能有助于在单独的列中获取值。希望我的选择正确,但我认为你从这个

获得了想法
select ul_ZenCerts, subsystem 
into #tempz1 
from  ul_ZenCerts.Subsystem z1 where  z1.[Certificate Template] Like '%Z85%' 

select ul_ZenCerts, subsystem 
into #tempz2 
from ul_ZenCerts.Subsystem z2 where z2.[Certificate Template]) Like '%Z86%'



SELECT 
  u.SubSystem, 
  z1.ul_ZenCerts,
  Z2.ul_ZenCerts 
FROM u_AllSubs u
left join #tempz1 z1 on u.SubSystem = z1.Subsystem
left join #tempz2 z2 on u.SubSystem = z2.Subsystem