尽管我可以对别名子查询进行分组和排序,但我无法在 where 子句中使用别名。我需要使用联接吗?
Works:
SELECT entries.*,
(SELECT avg(value)
FROM `ratings`
WHERE ratings.entry_id = entries.id) as avg_rating
FROM `entries`
ORDER BY avg_rating DESC
失败(“where 子句中的未知列‘avg_ rating’”):
SELECT entries.*,
(SELECT avg(value)
FROM `ratings`
WHERE ratings.entry_id = entries.id) as avg_rating
FROM `entries`
WHERE avg_rating < '4.5000' ORDER BY avg_rating DESC
您可以使用 HAVING 子句而不是 WHERE 来执行此操作
Syntax http://dev.mysql.com/doc/refman/5.1/en/select.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)