SELECT *
FROM
(
SELECT com_jobcard.job_card_num,
sum(worked_qty),employee.emp_name
FROM timer_completed
INNER JOIN process ON process.id = timer_completed.process_id
INNER JOIN com_jobcard ON com_jobcard.id = timer_completed.job_card_id
INNER JOIN employee ON employee.id = timer_completed.employee_id
AND process.id = '611'
AND timer_completed.group_id = '60'
AND timer_completed.report_date = DATE_ADD(CURDATE(), INTERVAL -1 DAY)
ORDER BY com_jobcard.id DESC
) AS tmp_table
GROUP BY com_jobcard.job_card_num
В этом коде я использую Group by
вариант, но мне нужен результат в порядке убывания com_jobcard.id
если я использую выше запрос он возвращает:Использование GroupBy и OrderBy на одном запросе
#1054
- Неизвестный column 'com_jobcard.job_card_num' in 'group statement'.
, пожалуйста, помогите мне.
Что вы пытаетесь достичь? Ваш запрос действительно недействителен SQL. Даже если вы можете заставить MySQL принять его, ваш запрос использует функцию (mis), где MySQL разрешает любые столбцы в 'select', которые не находятся в' group by'. Таким образом, столбец, такой как 'emp_name', получает значение * неопределенное *. –