Всем привет. Есть две таблицы products
, reviews
.
products: id |product_name|image
reviews: id |product_id | rating(int)
Нужно получить
product_name | image | AVG(rating)
Вроде бы элементарно, но ...
select products.name, products.image, AVG(rating)
from products,reviews WHERE products.id=reviews.product_id;
ERROR 1140 (42000): In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'review.products.name'; this is incompatible with sql_mode=only_full_group_by
Вот так должно сработать
select
pro.id, pro.name, pro.image, avg(rev.rating) from products pro
join reviews rev on pro.id = rev.product_id
group by pro.id, pro.name, pro.image
Для подсчета среднего нужно использовать в запросе group by, подробнее можно почитать тут: https://oracleplsql.ru/group-by-sql.html
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
я новичок в LaravelХочу перенести проект с ноутбука на ПК
Появилась необходимость сделать регистрацию и авторизацию для андройд приложения, для этих целей предполагается использование Slim и OAuth20...
Знаю, что много уже написано на тему ошибок с mysqli_fetch_assoc() Но вот снова
В этом фрагменте мы получаем строки от $rand->getValue(), далее разбиваем их на массив дабы каждая строка была в каждом элементе массива, но что проиходит...