MySQL数据排序
PHP中文网
PHP中文网 2017-04-17 10:58:43
[MySQL讨论组]
SELECT c.WORK_DATE,
       c.ONDUTY_TIME,
       c.OFFDUTY_TIME,
       group_concat(d.start_date) startDate,
       group_concat(d.end_date) endDate,
       group_concat(d.duty_explain) dutyExplain,
       group_concat(d.duty_status_id) dutyStatusId
  FROM    (SELECT a.WORK_DATE,
                  a.ONDUTY_TIME,
                  a.OFFDUTY_TIME,
                  b.DUTY_APPLY_ID
             FROM    (SELECT ONDUTY_TIME,
                             OFFDUTY_TIME,
                             WORK_DATE,
                             SEQ_ID
                        FROM tbl_duty
                       WHERE     USER_ID = 'xiaodong'
                             AND WORK_DATE >= '2012/3/20 星期二 0:00:00'
                             AND WORK_DATE <= '2012/3/29 星期二 0:00:00') a
                  LEFT JOIN
                     tbl_duty_to_apply b
                  ON a.seq_id = b.DUTY_ID) c
       LEFT JOIN
          tbl_duty_apply d
       ON c.DUTY_APPLY_ID = d.SEQ_ID
GROUP BY c.WORK_DATE;

这段sql 我想按照c.WORK_DATE倒叙排列,我要往哪加排序的sql语句呢 自己加了总是出错,主要是SQL是别人帮写的,现在急着要加排序。。。感谢!

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(1)
巴扎黑

理论上,家在 GROUP BY 之后

SELECT c.WORK_DATE,
       c.ONDUTY_TIME,
       c.OFFDUTY_TIME,
       group_concat(d.start_date) startDate,
       group_concat(d.end_date) endDate,
       group_concat(d.duty_explain) dutyExplain,
       group_concat(d.duty_status_id) dutyStatusId
  FROM    (SELECT a.WORK_DATE,
                  a.ONDUTY_TIME,
                  a.OFFDUTY_TIME,
                  b.DUTY_APPLY_ID
             FROM    (SELECT ONDUTY_TIME,
                             OFFDUTY_TIME,
                             WORK_DATE,
                             SEQ_ID
                        FROM tbl_duty
                       WHERE     USER_ID = 'xiaodong'
                             AND WORK_DATE >= '2012/3/20 星期二 0:00:00'
                             AND WORK_DATE <= '2012/3/29 星期二 0:00:00') a
                  LEFT JOIN
                     tbl_duty_to_apply b
                  ON a.seq_id = b.DUTY_ID) c
       LEFT JOIN
          tbl_duty_apply d
       ON c.DUTY_APPLY_ID = d.SEQ_ID
GROUP BY c.WORK_DATE
ORDER BY c.WORK_DATE DESC;
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号