當運行下面的查詢,我結束了在phpMyAdmin一個MySQL錯誤:MySQL的#1054未知列
#1054 - Unknown column 'wd.Datum' in 'having clause'
該查詢屬於一個時間報告應用程序,其中用戶反映時間上項目的工作每天的基礎上。有一張預計工作日的桌子,一張所有員工的桌子和一張有關當前工作費用信息的表格。最後一個表格也用於確定用戶何時受僱。 這個想法是讓所有的工作日和所有用戶爲了(在稍後的查詢中)選擇用戶已經忘記報告時間的日子。我想將結果集限制爲用戶已使用的日期。 這裏是我的查詢:
SELECT emp.ID AS user
FROM (workdays wd, employees emp)
INNER JOIN workrates wr ON (emp.ID=wr.UserId)
WHERE (wd.Datum<'2012-11-15')
GROUP BY WEEK(wd.Datum, 3), user
HAVING wd.Datum>=MIN(wr.FromDate)
(可能與http://bugs.mysql.com/bug.php?id=13551大約是在MySQL 5.0版本引入了一個語法變化,導致如果你忘記了某些括號此消息)
MySQL服務器運行版本Debian上的「5.1.63-0 + squeeze1」。
編輯:我改變了第一個查詢行
SELECT emp.ID AS user, wd.Datum
維傑的建議和查詢工作!雖然我不明白爲什麼。
什麼是你列在表中? –
嘗試在你的選擇中使用wd.Datum。 – Vijaychandar
Post SHOW CREATE TABLE employees; SHOW CREATE TABLE工作日; – rkosegi