需要使用orderby函数和orderby函数

时间:2015-10-31 17:23:41

标签: mysql

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)
GROUP BY com_jobcard.job_card_num
UNION 
SELECT job_card_num , die_qty,id FROM com_jobcard

在这个查询中我使用了SUM()和分组选项,但我的最终结果是我用DESC顺序用com_jobcard.job_card_num对结果进行排序可以任何人建议我

2 个答案:

答案 0 :(得分:0)

试试这个:

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)
  GROUP BY com_jobcard.job_card_num
  UNION 
  SELECT job_card_num , die_qty,id FROM com_jobcard
 ) as t1 order by t1.job_card desc;

答案 1 :(得分:0)

您只需在查询结尾处添加:

ORDER BY 1 DESC

这意味着:按第一列降序排序。