Задать вопрос
@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
  • Вопрос задан
  • 252 просмотра
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 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
Ответ написан
Ваш ответ на вопрос

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

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