2011-04-27 52 views
0

下面是表//感謝我的固定格式//對advertisments花在特定雜誌

ADV_COST 
-------- 
PAGE_SIZE 
MAG_ID 
COST 

//SAMPLE DATA ADV_COST// 
PAGE_SIZE    MAG_ID  COST 
-------------------- ---------- ---------- 
1/25 PAGE      1   40 
1/8 PAGE      1   60 
1/6 PAGE      1   65 
... 


ADS 
-------- 
AD_ID 
ADV_ID 
PAGE_SIZE 
MAG_ID 
START_DATE 
PURCH_DATE 
NUM_ISSUES 



//SAMPLE DATA ADS// 
    AD_ID  ADV_ID PAGE_SIZE  MAG_ID START_DAT PURCH_DAT NUM_ISSUES 
---------- ---------- ---------- ---------- --------- --------- ---------- 
     1   5 1/4 PAGE   1 01-APR-11 01-MAR-11   4 
... 

這裏的問題(一個月?一年?):
惠而浦ADV_ID = 6;房屋:MAG_ID = 1; 「Whirlpool本月在房屋廣告上花費多少錢?」,今年?「

請幫忙,謝謝!

這就是我試過的。

SQL> SELECT SUM(COST) 
    2 FROM DVD_ADV_COST A, DVD_ADS B 
    3 WHERE A.MAG_ID = B.MAG_ID 
    4 AND B.ADV_ID = 6 
    5 AND B.MAG_ID = 1; 
+1

您是否在嘗試以良好格式提出問題時遇到問題? http://tkyte.blogspot.com/2005/06/how-to-ask-questions.html – 2011-04-27 15:40:24

+0

修復了你的代碼格式。未來的參考:由四個空格縮進的問題中的行將被格式化爲代碼塊(或選擇文本並單擊編輯器中的「{}」圖標)。那就是說,你會分享你的嘗試嗎?你不知道從哪裏開始? – 2011-04-27 15:43:25

+0

每個問題的成本字段?每月?每個月有多少個問題? – 2011-04-27 15:44:39

回答

0

嘗試

SELECT SUM(B.COST * A.NUM_ISSUES) AS TOTAL_COST 
    FROM DVD_ADS A, 
     DVD_ADV_COST B 
WHERE B.MAG_ID = A.MAG_ID 
    AND B.PAGE_SIZE = A.PAGE_SIZE 
    AND A.ADV_ID = 6 
    AND A.MAG_ID = 1 

,然後添加日期範圍WHERE子句以及

如果它不返回任何數據,請確保你確實有條目ADV_ID = 6。 ...您的示例顯示了一個條目5

+0

結果與我的代碼相同。它運行但答案是空的 – dave 2011-04-27 16:11:44

+0

啊是的..這是有道理的..嗯 – dave 2011-04-27 16:21:31

+0

表是DVD_ADS和DVD_ADV_COST或ADS和ADV_COST – 2011-04-27 16:24:53