Задать вопрос
@Night_Harpy

Почему не выводит по убыванию sql?

select DATE_FORMAT( time_reports.date, '%W'), group_concat(employees.name, ' (', x.total_hours, ' hours)' SEPARATOR  ', '  LIMIT 3)  
  from employees
  inner join time_reports on employees.id=time_reports.employee_id
  inner join 
    (
      select employee_id, round(hours,2) as total_hours 
        from time_reports group by employee_id
         ORDER BY total_hours DESC
       )x on x.employee_id=time_reports.employee_id
  group by time_reports.date


x.total_hours должно выводиться 3 максимальных значения. Limit 3 работает, а вот как сделать ORDER BY total_hours DESC что бы работало ( я поставил во второй SELECT но эффекта ноль), если ставить в самом конце, то срабатывает тогда не только на total_hours но и на DATE_FORMAT, а нужно только на total_hours
  • Вопрос задан
  • 85 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 1
@MaximaXXl
select DATE_FORMAT( time_reports.date, '%W'), group_concat(employees.name, ' (', x.total_hours, ' hours)' order by x.total_hours desc SEPARATOR  ', '  LIMIT 3)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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