Задавайте вопросы, мы ответим
Вы не зашли.
Добрый вечер!
Есть такой запрос:
# id, resource_id, GROUP_CONCAT(r.name), GROUP_CONCAT(r.id), GROUP_CONCAT(created_at)
'22', '11646', 'Иван Иванович,Иван Сергеевич Рухля,Елизавета Максимовна,Иван Сергеевич,Тесак Ньютон', '22,17,15,26,14', '2017-01-16 12:56:11,2017-01-25 16:00:30,2017-01-16 12:50:00,2017-01-16 13:01:13,2017-01-17 12:45:50'
'1', '21421', 'Олег Антонович,Антон Егорьевич,Иван Сергеевич', '1,35,36', '2017-01-11 16:52:07,2017-01-16 04:56:28,2017-01-16 20:56:11'
Небольшой дамп в файле прилагается.
Сервер MariaDB 10.1.21
Собственно вопрос, почему так? для теста писались и более простые запросы с сортировкой и последующей группировкой, которые являются "стандартным" решением задачи, но они тоже работают неверно, чем можно исправить ситуацию? Заранее благодарю!
Отредактированно Proger (20.02.2017 18:36:26)
Неактивен
сортировка в подзапросе не учитывается
см Группировка в MySQL
Неактивен
То есть запрос надо перевернуть? Сначала группирую данные, а потом сортирую?
Неактивен
да
Неактивен
Что-то не так всё же...
Сделал такой запрос:
# id, resource_id, name, id, library_reader_id, created_at
'22', '11646', 'Иван Иванович', '22', '1', '2017-01-16 12:56:11'
'36', '21421', 'Иван Сергеевич', '36', '2', '2017-01-16 20:56:11'
Что-то всё равно неправильно, я что-то опять упускаю?
Если посмотреть в таблицу library_reader_resource то минимальное время 2017-01-11 и reader_id = 4, а его я так и не получаю...
Отредактированно Proger (21.02.2017 11:33:12)
Неактивен
вы выбираете created_at без агрегатной функции, потому время выбирается случайным образом
см Группировка в MySQL
Неактивен
Что-то я совсем запутался, избавился от ORDER и поступил по примеру из статьи.
Если кому-то будет полезно, вот такой запрос в итоге:
Неактивен