以下のクエリを実行すると、PHPMyAdmin で MYSQL エラーが発生します。
#1054 - 「having 句」の不明な列「wd.Datum」
このクエリは、ユーザーがプロジェクトにかかった時間を毎日報告する時間報告アプリケーションに属します。予想される稼働日のテーブル、全従業員のテーブル、および現在の稼働率に関する情報を含むテーブルがあります。最後のテーブルは、ユーザーがいつ雇用されたかを判断するためにも使用されます。アイデアは、(後のクエリで) ユーザーが時間を報告するのを忘れた日を選択するために、すべての稼働日とすべてのユーザーを取得することです。結果セットを、ユーザーが雇用された日に限定したいと考えています。これが私のクエリです:
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 で導入された構文変更に関するもので、特定の括弧を忘れた場合にこのメッセージが表示されます)
MySQL サーバーは、Debian でバージョン「5.1.63-0+squeeze1」を実行しています。
編集:最初のクエリ行をに変更しました
emp.ID をユーザー、wd.Datum として選択
Vijay が提案したように、クエリは機能します! 理由はわかりませんが。