每周定时统计的问题

foxsay 2003-11-27 08:00:10
根据“每天记录”,用SQLServer的作业功能,完成“每周记录”的定时统计。
我想在周末的23:59:00开始统计,可是面临三个问题:

1:“时间”列的类型定成datetime好?还是yyyy-mm-dd形式的char(10)好呢?

2:按照SQLServer的时间概念,一周是周日到周六,还是周一到周日?

3:如何确定一周的开始和结束时间?使用哪个函数,还是根据getdate()获取当前时间,推算出来。

请大家帮助
...全文
67 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
foxsay 2003-11-27
  • 打赏
  • 举报
回复
谢谢zjcxc(邹建)和pengdali(大力 V3.0)
pengdali 2003-11-27
  • 打赏
  • 举报
回复
select datepart(weekday,'2003-11-23') 是一周是周日到周六

SET DATEFIRST 1

select datepart(weekday,'2003-11-23') 是还是周一到周日

SET DATEFIRST 7
pengdali 2003-11-27
  • 打赏
  • 举报
回复
按周分组
select datepart(year,列名) 年,datepart(week,列名) 周,count(*) from 表 group by datepart(year,列名),datepart(week,列名)
pengdali 2003-11-27
  • 打赏
  • 举报
回复
1:“时间”列的类型定成datetime好?还是yyyy-mm-dd形式的char(10)好呢?
datetime这样才灵活

2:按照SQLServer的时间概念,一周是周日到周六,还是周一到周日?
select datename(weekday,getdate())
showmetoyou 2003-11-27
  • 打赏
  • 举报
回复
兄弟!打开“企业管理器”--“(local)windowNT”---管理--SQL SERVER 代理--作业!你建一个作业就知道了!
zjcxc 元老 2003-11-27
  • 打赏
  • 举报
回复
1:“时间”列的类型定成datetime好?还是yyyy-mm-dd形式的char(10)好呢?

当然用datetime好.



2:按照SQLServer的时间概念,一周是周日到周六,还是周一到周日?

一周是周日到周六.每周第一天为星期天



3:如何确定一周的开始和结束时间?使用哪个函数,还是根据getdate()获取当前时间,推算出来。

if datepart(weekday,getdate())=2
print '今天是星期1,一周的开始'
else
print '今天不是星期1'

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧