作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 MySQL,我想按购买每件商品的月份计算多件商品的购买数量。我的表名为“items_purchased”,项目按“item_id”列出,购买日期是名为“purchase_date”的时间戳。
这是我到目前为止的查询:
SELECT items_purchased.item_id, items_purchased.purchase_date,
DATE_FORMAT(DATE(purchase_date), '%m %y') AS monthYear FROM items_purchased
简单英语的结果将是这样的:
item_id=3:2011 年 6 月购买 2 次,2011 年 7 月购买 3 次
item_id=2:2011 年 6 月购买 1 次,2011 年 7 月购买 7 次
任何帮助我弄清楚如何执行适当的 COUNT() 和/或 GROUP BY 语句(或我可能需要的其他内容)来确定每个 item_id 的每月购买量的帮助将不胜感激!
谢谢你,蒂姆
最佳答案
SELECT YEAR(purchase_date) as year, DATE_FORMAT(purchase_date, '%M') as month, COUNT(item_id) as cnt
FROM items_purchased
GROUP BY YEAR(purchase_date), MONTH(purchase_date)
ORDER BY year, month, cnt
如果您想要每个 itemID 计数,请将“item_id”添加到 GROUP BY 子句的末尾。这只会计算在任何给定年份/月份中出现的 itemID 数量,但不会按项目进行分割。
关于MySQL COUNT() GROUP BY 子查询(?) 用于统计每月多个商品的购买情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7492066/
我是一名优秀的程序员,十分优秀!