有人能告诉我这个mysql查询有什么问题吗?
$p = mysql_query("SELECT name,subname FROM brands GROUP BY name WHERE
having count(*) > 10 ORDER BY RAND() LIMIT 1")or die(mysql_error()); 上面写着:
您的SQL语法出现了错误;请检查与您的MySQL服务器版本相对应的手册,以便在第1行使用接近于“由RAND()限制1顺序计数(*)> 10次”的正确语法。
发布于 2015-02-21 14:56:59
HAVING不使用WHERE子句,请删除它。
$p = mysql_query("SELECT name,subname FROM brands GROUP BY name
having count(*) > 10 ORDER BY RAND() LIMIT 1")or die(mysql_error()); 咨询:
您应该考虑使用prepared statements或with prepared statements切换到mysql_*,因为mysql_*函数是不推荐的。
发布于 2015-02-21 14:51:33
删除WHERE子句,您已经有了一个HAVING子句。
因此,你的声明必须是:
$p = mysql_query("SELECT name,subname FROM brands GROUP BY name HAVING count(*) > 10 ORDER BY RAND() LIMIT 1")or die(mysql_error()); https://stackoverflow.com/questions/28647051
复制相似问题