@denislysenko
data engineer

Запросы mysql выдают ошибку. Что делать?

два запроса выдают ошибку:
Error in query (1055): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'test.authors.name' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

Что делать?
Вот запросы:

select authors.name, count(books.id) as cnt
  from books, authors
  group by books.author_id
  having count(books.id) = 0


select authors.name, count(books.id) as cnt
  from books, authors
  group by books.author_id
  having count(books.id) > 1
  • Вопрос задан
  • 205 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Внимательно прочитать сообщение об ошибке, там всё понятно написано.
Можно ещё подумать самостоятельно. GROUP BY у вас объединяет несколько строк по полю `id`. Из какой из объединяемых в группу строк надо брать поле `name` и почему?
https://dev.mysql.com/doc/refman/5.7/en/sql-mode.h...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
this is incompatible with sql_mode=only_full_group_by
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы