0

我有两个视图,我想将它们合并到一个视图中,这样它们的记录就不会合并到一个记录中!我的意思是假设我有这些表:

表一(假设这是一张卖表,我们的客户卖了东西!)

  Date           Description           Fee       Number        Money           
12/2/2012        something             10$        20          200$
10/3/2012      somethingelse           20$        30          600$

表二(假设这是我们的客户赚钱的表!)

  Date           Description           Money           
02/8/2012        someinfo              5000$
12/1/2012         stuff                3100$

结果表或视图将是(基于日期的降序):

  Date           Description           Fee       Number        Money  
02/8/2012        someinfo               0          0           5000$    
10/3/2012      somethingelse           20$        30           600$
12/2/2012        something             10$        20           200$
12/1/2012         stuff                 0          0           3100$

我怎样才能实现这种形式?这两个表是分开的,但每个表都有一个唯一的个人 ID,代表销售员帐户。(所以基本上这意味着这些信息只属于一个人。我们的客户想要一份只给他这个特定视图的报告!)我尝试在这两个表上使用 UNION,但是合并的行!如果我使用联接,则只有一行将两个表行合并在一起。所以我被困在这里,不知道现在该怎么办。

4

3 回答 3

2

我认为应该这样做。

CREATE VIEW new_view AS

SELECT * FROM table_one

UNION ALL

SELECT *, 0 as Fee, 0 as Number FROM table_two;
于 2013-02-26T18:36:05.557 回答
2

我认为你需要 UNION ALL 而不仅仅是 UNION。

select Date, Description, Fee, Number, Money
from table1
    UNION ALL
select Date, Description, 0 Fee, 0 Number, Money
from table2
order by Date
于 2013-02-26T18:36:13.443 回答
2

尝试类似的东西

CREATE VIEW vMyView
AS
SELECT [Date], [Description], [Fee], [Number], [Money]
FROM v1
UNION ALL
SELECT [Date], [Description], 0 AS [Fee], 0 AS [Number], [Money]
FROM v2
于 2013-02-26T18:36:42.353 回答