我有一個SQL查詢可以檢索與廣告表連接的評級表的平均評分。在COUNT(*)條件中添加WHERE條件MySQL
我的查詢工作正常,但我想添加一個WHERE語句來獲得只有獲得兩個或更多評級的廣告。
這是我的查詢:
SELECT ad_id, AVG(rating) as average_rating,
COUNT(user_id) as num_rates
FROM ads_rating
GROUP BY ad_id
而我所需的查詢:
SELECT ad_id, AVG(rating) as average_rating,
COUNT(user_id) as num_rates
FROM ads_rating
WHERE num_rates > 1
GROUP BY ad_id
但MariaDB的告訴我:
[錯誤] 1054 - 在「where子句中未知列 'num_rates' '
謝謝對不起,我的小白在MySQL
考慮使用** **有條款,這與聚合函數的工作原理是COUNT – fungusanthrax
你應該在你組語句中使用'having' 。 –
與groupby合作 –