2012-05-10 69 views
0

我試圖從給定用戶得到每個月的總時數,並且遇到代碼問題。需要幫忙。從Mysql和php中選擇總和

是我到目前爲止有:

$ SQL = 「SELECT SUM(小時)total_Hours航班往返WHERE月份= 3 和用戶名= '$ MYNAME'」;

這甚至沒有工作,但我真正需要的是每個月用戶的總小時數。 可能嗎?

+0

你在結果中得到了什麼嗎? – Nate

回答

1

下面是查詢,詢問總和每月:

SELECT SUM(`hours`) AS total_Hours, `month` FROM flights 
WHERE `username`='some_user' 
GROUP BY `month` 

你也應該知道你的$myname變量必須與mysql_real_escape_string傳遞之前進行轉義在查詢中。

@Robbie講述了逃避month的權利。這似乎是您查詢的唯一問題。

+0

月是一個保留字 - 把它放在引號中,否則這也不起作用。 – Robbie

+0

你幾乎是正確的,但MySQL使用另一個字符。 –

0

你需要一個GROUP BY條款:

SELECT user, month, SUM(hours) AS total_hours 
FROM flights 
GROUP BY user, month 
ORDER BY user, month 
+0

月是一個保留字 - 將其放在引號中,否則這將不起作用 – Robbie

+0

這不是保留字。有一個MONTH()函數,但這不是函數調用。 http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html –

+0

接受 - 它會工作。抱歉。 – Robbie