我需要列出在所选时间段内(自请求列表之日起)已添加到数据库的 column1 数量 - 每天、每周(过去 7 天)、每月(过去 30 天)和每季度(过去 3 个月) )。例如,下面是我为执行此任务而创建的表。
Column | Type | Modifiers
------------------+-----------------------------+-----------------------------------------------------
column1 character varying (256) not null default nextval
date timestamp without time zone not null default now()
coloumn2 charater varying(256) ..........
现在,我需要 column1 中相对于所选时间段的条目总数。喜欢,
Column 1 | Date | Coloumn2
------------------+-----------------------------+-----------------------------------------------------
abcdef 2013-05-12 23:03:22.995562 122345rehr566
njhkepr 2013-04-10 21:03:22.337654 45hgjtron
ffb3a36dce315a7 2013-06-14 07:34:59.477735 jkkionmlopp
abcdefgggg 2013-05-12 23:03:22.788888 22345rehr566
从上面的数据来看,对于每天选择的时间段,它应该是 count= 2
我试过做这个查询
select count(column1) from table1 where date='2012-05-12 23:03:22';
并获得了与时间戳匹配的确切记录。但我真的需要以正确的方式来做,我相信这不是检索计数的有效方法。任何可以帮助我了解编写此类查询的正确有效方式的人都会很棒。我是数据库世界的新手,我正在努力提高编写任何查询的效率。谢谢! [编辑] 当前每个查询都需要 175854 毫秒来处理。什么是减少相应处理时间的有效方法。任何帮助都会非常棒。我正在使用 Postgresql 来做同样的事情。