0

我有这个类别组,其中有 5 个类别和类别的描述(显示文本)。字段(类别 ID、显示文本)

我还有另一个视图,其中包含有关月份、性别、新(部门员工)、转移(来自另一个部门的员工)和继续(同一部门)和类别 ID 等信息。

现在我想根据性别和月份检查类别表中的每个类别ID,是否有任何新的、转移的或继续的。

例如, CategoryID =1 ,如果存在任何 CategoryID=1 ,则在视图中检查,然后在 VIEW 中返回 ID 的所有详细信息,如果不是每个 Gender 和 Month 返回 0。

@编辑:

    select c.UniqueID, 
           c.DisplayText ,  
           s.Gender, 
           s.Term,
           s.Status ,
           s.NoofStatus 
     from Category c 
     left outer Join 
     Status_Count_View s on c.UniqueID=s.UniqueID

我希望每个学期将表 A 中的所有记录映射到表 B。如果在表 B 中没有找到表 A 中特定类别的记录,则该类别仍必须显示为值 0

4

1 回答 1

0
select * from category c, cat_view cv where c.Cat_ID = cv.categoryID
union
select c.cat_id, c.DisplayText, 0 , 0 ,'',0,0,0
from category c 
where c.Cat_ID not in (select distinct(categoryID) from cat_view)

请根据需要编辑列名。这里的关键是“联合”。首先我们得到所有匹配的东西。然后我们得到所有不匹配的类别并将它们添加到结果中(通过'union'关键字实现)。

于 2013-06-14T17:12:34.510 回答