0

当谈到数据库时,我是一个初学者,这个问题让我的大脑融化了。我有一个数据库,其中包含您可以想象的标准列:ID、价格、描述等。我应该如何组织数据库,以便可以查询数据库在 2012 年 1 月 8 日到 2012 年之间购买了多少次物品- 03-23?

4

3 回答 3

2

同意其他答案。

SELECT itemcode, count(itemcode) 'times purchased', sum(quantity) 'amount purchased'  
FROM `temp_trans` 
WHERE `trans_date` >= '2012-01-08' AND `trans_date` <= '2012-03-23' 
GROUP BY itemcode

这是一个活生生的例子:http ://sqlfiddle.com/#!2/13def/1

于 2012-04-10T17:41:36.240 回答
1

如果您有一个日期列,dt您可以使用

SELECT COUNT(Id) FROM your_table
WHERE dt BETWEEN 2012-01-08 AND 2012-03-23
  AND Id = your_item_id
于 2012-04-10T17:22:04.867 回答
1
select id, count(*)
from mytable
where date between '2012-01-01' and '2012-02-02'
group by id

这为您提供了每件商品的购买次数。您分组的字段将取决于您希望如何拆分结果,使用 id 或唯一名称将取决于您要对结果执行的操作。

之间的子句是包容的顺便说一句

编辑:评论的好点!可能应该说“使用适当的字段进行分组,例如项目的名称或 ID”。在我们的某些系统中,描述和名称可以互换使用 :)

于 2012-04-10T17:25:19.060 回答