1
幾個條件求和的名單我有一個MySQL聲明一個問題:MySQL的:在一個SQL語句
select sum(x) as "sum", "01.06.2010" as "date" from (
select distinct a.id as ID, a.dur as x from b_c
inner join c on b_c.c_id = c.id
inner join a on c.id = a.c_id
inner join a_au on a.id = a_aud.id
inner join d on a_au.rev = d.rev
where
b_c.b_id = 30 and
a_au.stat != 1 and
DATE(FROM_UNIXTIME(rtime)) = DATE('2010-06-01')
) AS SubSelectTable;
該語句返回一行與colums「總和」和「日期」。
現在我不只有一個日期('2010-06-01'),我有很多日期我必須得到它的總和(),但不是在一行中。我想每天有一個結果行。
因此,舉例來說,上面的語句返回我
sum date
-------------------
20 01.06.2010
現在我有日期2010-06-01,2010-06-02,2010-06-03,... 我可以做的是爲每個日期寫一個更改DATE的sql語句。所以如果我有10個日期,我將有10個數據庫的sql語句。 但我確實希望它有一個SQL語句,並且結果不應該是所有給定日期的總和,我希望每個日期都有一個結果行。所以結果應該喜歡:
sum date
-------------------
20 01.06.2010
133 02.06.2010
19 03.06.2010
88 04.06.2010
... ...
我怎樣才能做到這一點?有人知道嗎?
非常感謝&最好的問候。
非常感謝,這似乎是不錯,但我怎麼能告訴的說法,我想有兩個給定日期之間的唯一結果行? 我在「2010-07-01」和「2010-07-10」之間添加了「... where ...和日期」,但它不知道日期列。 我該怎麼做? – Tim 2010-07-14 11:40:55
啊,當然我可以這樣做: 「......其中......和DATE(FROM_UNIXTIME(rtime))在'2010-07-01'和'2010-07-10'之間」「但我認爲其表現是不太好,因爲它必須計算兩次日期的時間戳。 – Tim 2010-07-14 11:47:59
解決時間: 按日期分組,日期介於'2010-07-01'和'2010-07-10'之間; – Tim 2010-07-14 12:13:21