Группировка по трем столбцам не работает в CodeIgniterPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Группировка по трем столбцам не работает в CodeIgniter

Сообщение Anonymous »

Мне нужен был результат с группировкой по трем столбцам, и SQL работал отлично и без каких-либо проблем. Я сталкиваюсь с этой проблемой, когда использую ее в рамках CodeIgniter; он не выполняет запрос. Мой код и SQL следующие.

Код

Код: Выделить всё

$this->db->select(['trk.userid AS user_id', 'scr.course AS course_id'])
->from('mdl_scorm scr')
->join('mdl_scorm_scoes_track trk', 'scr.id = trk.scormid', 'inner')
->join('mdl_course_modules mcs', 'mcs.instance = scr.id', 'inner')
->where_in('trk.value', ['completed','incomplete','passed'])
->group_by(['scr.course', 'trk.userid', 'trk.scormid'])
->order_by('trk.userid', 'DESC');
SQL

Код: Выделить всё

SELECT `trk`.`userid` AS user_id, `scr`.`course` AS course_id
FROM (`mdl_scorm` scr)
INNER JOIN `mdl_scorm_scoes_track` trk ON `scr`.`id` = `trk`.`scormid` INNER JOIN `mdl_course_modules` mcs ON `mcs`.`instance` = `scr`.`id`
WHERE `trk`.`value` IN ('completed', 'incomplete', 'passed')
GROUP BY `scr`.`course`, `trk`.`userid`, `trk`.`scormid`
ORDER BY `trk`.`userid` DESC LIMIT 0,100;
Это отлично работает, когда в group_by есть только два столбца, например

Код: Выделить всё

->group_by(['scr.course', 'trk.userid'])
В чем может быть причина?

Подробнее здесь: https://stackoverflow.com/questions/340 ... odeigniter
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»