Sql server 2012 通过辅助表链接到主表检索匹配数据的SQL查询

Sql server 2012 通过辅助表链接到主表检索匹配数据的SQL查询,sql-server-2012,Sql Server 2012,我有一个包含4个表的SQL Server数据库 第一个表包含具有主键的名称列表: id1 Name --------------- 1 ABC 2 XYZ 第二个表的外键指向具有相关属性的第一个表 id2 Properties id1 ----------------------- 1 P1 1 2 P2 1 3 P3 1 4 P2

我有一个包含4个表的SQL Server数据库

第一个表包含具有主键的名称列表:

id1    Name
---------------    
 1     ABC
 2     XYZ
第二个表的外键指向具有相关属性的第一个表

id2   Properties   id1
-----------------------
 1      P1          1
 2      P2          1
 3      P3          1
 4      P2          2
 5      P3          2
 6      P5          2
第三个表包含一些任务:

id3    task
-----------
 1     T1
 2     T2
第四个表任务属性与具有外键的任务表相关:

Id4   Properties   id3
-----------------------
 1    P1            1
 2    P2            1
 3    P3            1
 4    P2            2
 5    P3            2
 6    P5            2
本例中的场景是,我有一个任务,并且必须将其属性与第一个表名的属性相匹配

id2   Properties   id1
-----------------------
 1      P1          1
 2      P2          1
 3      P3          1
 4      P2          2
 5      P3          2
 6      P5          2
e、 g.在任务2中,属性将与XYZ匹配

我试着用分组计数,但没有运气得到准确的结果


有人能帮我吗?

为什么任务及其属性有不同的表?是否存在一对多关系?是否查看了
JOIN
s?是否存在一对多关系。我尝试了使用连接,但它不会像预期的那样工作,因为我必须匹配属性。我想要实现的是将任务的属性与每个名称的“属性”匹配,如果所有任务属性都存在于“名称”属性中,则将该名称包含到结果中。如果我选择某个前端(.Net),我必须使用嵌套循环来匹配属性,但这不是更快的方法。我正在寻找一种在SQL中实现它的方法。