如何以星期或月为单位对数据库进行统计(20分)

  • 主题发起人 主题发起人 Jao
  • 开始时间 开始时间
在数据库中设日期字段.
 
有日期字段,接下来怎么办?
 
什么数据库? MS SQL Server? Sybase SQL server ? or Oracle? or Dbase
or Paradox?
 
天数 / 7 不是星期数,至于四舍五入什么的自己玩吧
 
大哥,天数除以7不是星期数!比方说4月4日到4月10日才算是一个星期,要按照历法来着。
我想既然Delphi可以取到几号是星期几,那么应该也可以知道从几号到几号是一
个星期。数据库是用SQL Server 6.5,我想也应该有这种功能。应该很简单,我
是不知道用什么语句,SQL或是Delphi有这种函数。
 
我找到答案了!
我花了一整天的时间来研究SQL语言,终于找到解决问题的方法。不敢独享,贴
上来与大家讨论。
正如我想的一样,只要一条语句:

SELECT SUM(Field_balance) FROM log GROUP BY DATEPART(WK,Field_date)

DATEPART()函数会以一个整数的形式返回一个DATETIME类型值的一部分,
WK是WEEK的简写,它的范围是1-53。你也可以用DATEPART(MM,Field_date)来取
得月份的值(1-12)。诸如此类的YY(YEAR,1753-9999),DD(DAY,1-31),HH(HOUR,0-23).....
建议写数据库程序的虾们也去仔细研究一下SQL,我只找到一份零散的资料,看
了一半已经大呼“厉害”,SQL的功能真的很强大,有很多东西值得研究呵!
如果你那里有完整的SQL资料,别忘了请给我一份哟。
 
需要这么写:
SELECT DATEPART(WK,Field_date),
SUM(Field_balance) FROM log GROUP BY DATEPART(WK,Field_date)
 
我用DESKTOP ,没有DATEPART(),只有EXTRACT(month,field_date)
似乎可用:
select saledate,sum(amountpaid)
from ":bcdemos:orders"
group by extract(month,saledate)

或extract(year,saledate),extract(day,saledate).etc.
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
816
SUNSTONE的Delphi笔记
S
S
回复
0
查看
737
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部