2011-12-18 28 views
0

salesexpensesの2つのテーブルがあります。 salesには、sale_datepriceの2つの列があり、費用表には2つの列、dateamountがあります。 年の日数を持つviewもあります。 salesexpensesをデータでsalesexpenses表に:(Create View with 365 days2つのテーブルに2つの列を持つビューを作成

私はこのビューに別の2つの列を追加したいです。

例:

SalesTable

sale_date price 

05-DEC-11 1,500 
05-DEC-11  500 
11-DEC-11  800 
17-DEC-11 2,400 

ExpensesTable

date  amount 

06-DEC-11  300 
11-DEC-11  100 
11-DEC-11  400 
15-DEC-11 1,100 

View

date  sales expenses 

01-JAN-11 null null 
02-JAN-11 null null 
03-JAN-11 null null 
04-JAN-11 null null 
05-JAN-11 null null 

... 


05-DEC-11 2,000 null 
06-DEC-11 null  300 
07-DEC-11 null null 
08-DEC-11 null null 
09-DEC-11 null null 
10-DEC-11 null null 
11-DEC-11  800  500 
12-DEC-11 null null 
13-DEC-11 null null 
14-DEC-11 null null 
15-DEC-11 null 1,100 
16-DEC-11 null null 
17-DEC-11 2,400 null 

... 


28-DEC-11 null  null 
29-DEC-11 null  null 
30-DEC-11 null  null 
31-DEC-11 null  null 
以下のように作成する必要がありますこれらの2つの表に dateによって saleexpensesテーブル群内 priceamount列の和で作成されたビューで

salesexpenses列。

どうすればいいですか?

+0

を私はよく分からないが、あなたはここに掲載する前に、あなた自身にそのビューを作成しようとしたのですか? – Lion

+0

@Lion私はそれをやろうとしました。日付の列の合計を表示することができません – Bishan

答えて

0

これはそこにあなたを取得する必要があります。

SELECT the_day, price, amount 
    FROM year_days LEFT JOIN (SELECT sale_date, SUM(price) price 
           FROM sales 
          GROUP BY sale_date) ON the_day = sale_date 
       LEFT JOIN (SELECT expense_date, SUM(expenses) amount 
           FROM expenses 
          GROUP BY expense_date) ON the_day = expense_date 
ORDER BY the_day; 

THE_DAY  PRICE  AMOUNT 
--------- ---------- ---------- 
... 
01-DEC-11 
02-DEC-11 
03-DEC-11 
04-DEC-11 
05-DEC-11  2000 
06-DEC-11     300 
07-DEC-11 
08-DEC-11 
09-DEC-11 
10-DEC-11 
11-DEC-11  800  500 
12-DEC-11 
13-DEC-11 
14-DEC-11 
15-DEC-11     1100 
16-DEC-11 
17-DEC-11  2400 
18-DEC-11 
... 
+0

[http://stackoverflow.com/questions/8531269/create-view-with-365-days]のクエリで上記のクエリを1つのクエリとして記述するにはどうすればよいですか? – Bishan