我有這個查詢,工作正常。它帶來了兩個表,manager_details和用戶的數據。我需要的是讓管理人員的總分但從第1周到第7周。 Week是manager_details表中的另一個字段,其值可能爲0-x。將filteres添加到我的查詢中會導致錯誤。 Mysql
SELECT
SUM(mng.score) AS accumulated_score,
mng.manager_id AS manager_id,
users.id,
users.fname,
users.lname
FROM manager_details AS mng
JOIN users
ON users.id = mng.manager_id
GROUP BY manager_id
ORDER BY accumulated_score DESC
LIMIT 5
爲了得到1周比分至7星期,我嘗試添加
SELECT
SUM(mng.score) AS accumulated_score,
mng.manager_id AS manager_id,
users.id,
users.fname,
users.lname
FROM manager_details AS mng
WHERE mng.week >= 1 AND mng.week <= 6 -- this line
JOIN users
ON users.id = mng.manager_id
GROUP BY manager_id
ORDER BY accumulated_score DESC
LIMIT 5
,並得到這個
錯誤代碼:1064你有一個錯誤的SQL語法;檢查對應於你的MySQL服務器版本的權利 語法使用近「上users.id = mng.manager_id集團用戶加入 BY MANAGER_ID
的 手動和也試圖
...
HAVING mng.week >= 1 AND mng.week <= 6 -- <--
...
我還把GROUP BY之前的HAVING類放在GROUP BY之後,並且沒有工作,得到了mysql錯誤檢查語法..等等。
我做錯了什麼,但不知道它是什麼。
所以,用什麼條款,我在哪裏把這個條件來篩選我mng.score並獲得唯一擺在1-7周之間的分數?
'WHERE mng.week> = 1 AND mng.week <= 6' - 沒問題。你最好把你修改後的查詢和確切的錯誤信息。 「我做錯了什麼,但不知道它是什麼。」 ---如果你不把它展示給我們,我們應該如何幫助? – zerkms
完全滑了我的心思添加代碼錯誤,謝謝你的提醒。 – MJoraid
'WHERE'後去**'JOIN'和** **前'集團BY' – zerkms