mysql - 以百分比为单位获取年月数据
问题描述
我一直想在谷歌上找到解决我的问题的方法,但我得到的只是我无法理解的,因为我是数据库新手。我正在使用Mysql。
问题
我在表中有数千条记录,我必须在其中显示当年全年记录的月份百分比。以下是订单表的结构
这就是我想要显示数据的方式
解决方案
我会交叉加入两个查询。第一个是每月销售的产品数量,第二个是当年销售的产品总数:
SELECT `month`, `num_month` / `num_year` * 100 AS "percent"
FROM (SELECT MONTH(`dateOfOrder`) AS "month", COUNT(*) AS num_month
FROM `order`
WHERE YEAR(`dateOfOrder`) = 2018
GROUP BY MONTH(`dateOfOrder`) a
CROSS JOIN (SELECT COUNT(*) AS num_year
FROM `order`
WHERE YEAR(`dateOfOrder`) = 2018) b
推荐阅读
- android - 由于 paytm allinOne sdk,在实施 facebook sdk 后无法生成构建
- html - 选择 dropdwon 中某些字体的 optgroup 左边距
- javascript - 免除特定路由空闲超时reactjs
- isabelle - 如何在 Isabelle proff 助手中形式化公理?
- python - 通用协议:mypy 错误:参数 1 具有不兼容的类型 ...;预期的
- rabbitmq - RabbitMQ HealthCheck 基于使用管理 API 的“Stuck”队列
- django - Django如何在base.html中传递上下文或模型对象而不在url中传递视图
- image - (重新)渲染多个图像的正确方法
- swift - 读取位于 ~/.ssh 的配置文件
- google-chrome-extension - 禁用您无法控制的 Chrome 扩展程序的通知