CakePHP3: список SELECT отсутствует в группе GROUP BY в ассоциации ToTany

Я уже сталкивался с такой проблемой, но я не понимаю, как определить group() в этом случае:

У меня есть следующие таблицы:

Articles {
    'id',
    'name',
}

Categories {
    'id',
    'name'
}

ArticlesCategories {
    'article_id',
    'category_id'
}

И запрос:

$seconds = $this->Categories->find()
->contain([
    'Articles' => function ($q) {
        return $q->distinct(['Articles.id']);
    }
])
->where([
    'Categories.name IN' => $themeNames,
->all();

Ошибка:

Exception: SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'base.ArticlesCategories.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by in [/var/www/mySite/vendor/cakephp/cakephp/src/Database/Statement/MysqlStatement.php, line 36]

Так как проблемы, кажется, приходят из таблицы соединений, я не вижу, как написать group() пункт.

0 ответов

Другие вопросы по тегам