我正在使用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:2 2011年6月购买,2011年7月购买3件 item_id = 2:1 2011年6月购买,2011年7月购买7次
任何帮助我帮助我弄清楚如何做适当的COUNT()和/或GROUP BY语句(或我可能需要的任何其他)来确定每个item_id的每月购买将不胜感激!
谢谢你, 蒂姆答案 0 :(得分:1)
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
如果您想要per-itemID计数,请将“item_id”添加到GROUP BY子句的末尾。这只是计算在任何给定的年/月中出现的itemID数量,但不会将每个项目分解出来。