2010-03-26 55 views
-1

我想從給定日期的最後1年的數據。例如:查詢使用mysql從給定日期查找去年每個月的數據?

我有日期2013-06-01 ,我想數據如下也是數據我是從三個表使用Group By或別的東西

Month | Amount | Total_Data 
June 2013  100  5 
May 2013  80  4 
     -  100  5 
     -  100  5 
July 2012  10  2 
希望

我嘗試下面的查詢,但沒有鍛鍊

SELECT DATE_FORMAT(rf.period, '%M %Y') as Month 
    , sum(p.amount * ((100-q.amount)/100)) as Amount 
    ,count(distinct q.label_id) as Total Data 
FROM table1 rf 
    , table2 p 
    , table3 q 
    ,table4 a 
where rf.period BETWEEN '2013-06-01' AND '2013-06-01' 
    and q.royalty_period BETWEEN '2013-06-01' AND '2013-06-01' 
    and a.id = q.album_id 
    and p.file_id = rf.id 
    and p.upc = a.upc 
    and p.local_revenue is not null 
GROUP BY Month 
+0

它是如何鍛鍊的?你的結果是什麼? – 2010-03-26 07:10:10

回答

0

你有相同的日期,在您的BETWEEN子句:「2013年6月1日」 ==「2013年6月1日」 所以它只有1天的時間

+0

請注意,在兩個BETWEEN子句中都可以看到相同的語法。 – 2010-03-26 07:11:36

+0

是的,這只是一個例子,因爲我正在嘗試,但我想要我想要的實際數據是如上所述。 如果我將其更改爲'2013-06-01'和'2012-07-01',它不會給我提供任何數據,因爲我需要12個月的實際數據。 – Salil 2010-03-26 07:13:50

+0

@Salil你在這裏混淆了BETWEEN的最小和最大參數http://dev.mysql.com/doc/refman/5.1/en/comparison-operators.html#operator_between – 2010-03-26 07:24:58

相關問題