質問: s.id WHERE k.created_at BETWEEN '2016-05-31 00:00:00' AND '2016-05-31 23:59:59' AND COUNT(k.name) > num ================================================- わかりずらく申し訳ございません。 tableBから名前を抽出したいのですが、 条件として、tableAから出したある平均数以上のものというクエリを作成しています。 エラーがでてしまい原因がわからない状況です。 lnvalid use of group function となります・・・ 改善策をご教示いただけますでしょうか・・・
回答: MySQL環境がないのでSQLを見ただけのコメントになることをご了承ください。 tableA k ON num.id = k.id ⇒num副テーブルにidというカラムがないのでnum.idがエラーになりそうです。 AND COUNT(k.name) > num ⇒having句じゃないとエラーになるかと。 また、numはテーブル別名なのでカラムを指定しないとダメかも。 両テーブルの意味合いとサンプルデータ、 算出する"ある平均点"について教えていただけると回答しやすいと思いますよ。