Я извлекаю записи из двух таблиц, объединяя их, т.е. таблица продуктов будет объединена с таблицей оценок и получит продукт со средним рейтингом, но, к сожалению, он не работает на живом сервере, однако он отлично работает на локальном хосте, поэтому я следовал ниже ссылки, но без изменений, по-прежнему получают ту же ошибку, поэтому, наконец, я понимаю, что это проблема запроса, потому что localhost работает отлично, и если я пытаюсь внести изменения в режиме sql, это не разрешено в случае живого сервера mysql и отображения Превосходит ограничение, поэтому, какие изменения требуются в запросе для правильного получения результата.
product
id product_name keyword
1 A xyz
2 B abc
3 C aaa
4 D abc
rating
id product_id rating
1 2 2
2 2 4
3 1 2
4 4 3
5 2 3
6 2 4
Mysql запрос:
select p.pid,
p.product_name,
COALESCE(ROUND(AVG(r.rating), 1), 0) as avgRate
from product p
left join rating r on r.product_id=p.id
WHERE (LOWER(p.product_name) LIKE '%a%'
OR LOWER(p.keyword) LIKE '%abc%' )
GROUP BY p.product_id
Реферальные ссылки:
Ошибка относится к only_full_group_by при выполнении запроса в MySql.
# 1055 - Выражение списка SELECT отсутствует в предложении GROUP BY и содержит неагрегированный столбец, что несовместимо с sql_mode = only_full_group_by