对于数据库而言,我是初学者,这个问题让我的大脑融化。我有一个数据库,你可以想象标准列:Id,价格,描述等。我应该如何组织数据库,以便可以查询数据库在2012-01-08和2012-之间购买了多少次物品? 03-23?
答案 0 :(得分: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
答案 1 :(得分:1)
如果您有一个名为dt
的日期列,则可以使用
SELECT COUNT(Id) FROM your_table
WHERE dt BETWEEN 2012-01-08 AND 2012-03-23
AND Id = your_item_id
答案 2 :(得分:1)
select id, count(*)
from mytable
where date between '2012-01-01' and '2012-02-02'
group by id
这将为您提供购买每件商品的次数。您分组的字段将取决于您希望如何拆分结果,使用ID或唯一名称将起作用,具体取决于您要对结果执行的操作。
之间的条款是包容性的btw
编辑:评论的好点!可能应该说&#34;使用适当的字段进行分组,例如项目的名称或ID。&#34;在我们的一些系统中,描述和名称可互换使用:)