SELECT DATE_FORMAT( start_time, '%Y-%m-%d' ) AS days, count( * ), city_id AS city_id FROM orders WHERE start_time BETWEEN '2018-11-01' AND '2018-11-10' GROUP BY days, city_id ORDER BY days DESC, city_id DESC
由于日期是datetime类型的字段,要精确到每一天,也就是只须要Y-m-d就好了。因此,就须要使用mysql的 date_format 函数将日期转换下,并根据其进行分组查询。mysql
另外排序的语法也要注意了,多个字段排序是要字段间使用‘,’间隔,不然无效或者报错。sql