2011-03-11 42 views
0

我有两个表,其列为我感兴趣的列,如Table1.Column1和Table2.Column2 Table1是种表的种类表和表2是项目表。这两个表的连接查询得到的followinf格式的数据SQL获取额外行的数据

Column1 Column2 
A   1 
A   2 
B   1 
B   2 
B   3 

我想,就是以以下格式的数据:

Column1 Column2 
A   0 
A   1 
A   2 
B   0 
B   1 
B   2 
B   3 

即在一开始获得额外0每个组每一次。 0不会退出数据库。

有谁知道如何在SQL中实现这个?

非常感谢,

回答

1

这是一种方法。

SELECT DISTINCT Column1, [Column2] = 0 
FROM (
      YourOriginalQuery 
     ) q 
UNION ALL 
     YourOriginalQuery 

最有可能的是,通过将此要求合并到原始查询中可能会有更好的解决方案。如果您发布您的查询,我们可以提出更好的选择。

0

或者类似的东西:

select C.CategoryId, drv.CategoryGroupId from Category as C 
cross join (
    select 0 as CategoryGroupId 
    UNION 
    select CG.CategoryGroupId from CategoryGroup as CG 
)drv order by CategoryId, CategoryGroupId 
相关问题