碰到这样一个需求,需要查出订单表中每个时段的销量,请问sql中如何根据时段去分组?
数据库为mysql
WHERE `createTime` < xxx AND `createTime` > xxx;
或者
WHERE `createTime` BETWEEN xxx AND xxx;
如果你希望在一条 SQL 语句里返回多个时段的数据,有个小技巧,就是对时间做运算,希望在同一分组的得到同一个值,然后 GROUP BY 即可。
比如 UNIX_TIMESTAMP(xxx) / 1000
或者用 MySQL 的时间函数。
select sum(字段) from 表
where 时间字段 between 开始 and 结束 --如果需要进行过滤的话
group by date_format(时间字段, '%Y%m%d%H%i%s') --具体需要精确到什么地方需要你自己来决定了
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
5 回答1.4k 阅读
3 回答1.2k 阅读✓ 已解决
你运行下这个函数你就懂了
关于 DATE_FORMAT()的语法 下面有 http://www.w3school.com.cn/sq...