SQL中固定显示月初和月中

dengyi425 2016-05-24 04:07:45
公司的考勤是从access数据库中读出来的
想统计某一个月的考勤记录
比如:我们公司是从当月的26号到下月的25号为考勤月

但是考勤记录中有周六日无考勤数据,但我又希望把周六日都显示出来。怎么弄呢?

SQL中可以这样

select dateadd(day,number,'2015-03-26') as CheckDate, NEWID() as Id
from
master..spt_values
where
datediff(day,dateadd(day,number,'2015-03-26'), '2015-04-25')>=0
and number>=0
and type='p'

ACCESS中有没有这样的方法?

...全文
129 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingtiy 2016-05-25
  • 打赏
  • 举报
回复
引用 6 楼 dengyi425 的回复:
怎么生成一个日历表? @kingtiy
呵,7楼那个方法可行. 这里提供个简单的Sql的吧.

DECLARE @date DATETIME ='2000-01-01'

WHILE @date<'2100-01-01'
--生成100年的日期
BEGIN
INSERT INTO tb_date(日期)VALUES(@date);
--tb_date 是你的要生成的日期表,当然还可以有其它字段,你自己定
SET		@date=DATEADD(d,1,@date)

end
Tiger_Zhao 2016-05-25
  • 打赏
  • 举报
回复
在Excel中做个表格,保存成csv,在Access中导入。
不要太简单哦!
dengyi425 2016-05-24
  • 打赏
  • 举报
回复
怎么生成一个日历表? @kingtiy
kingtiy 2016-05-24
  • 打赏
  • 举报
回复
1.生成一个日期表.会显示每工作日及周末 2.用这个生成表左关联考勤记录表.
Tiger_Zhao 2016-05-24
  • 打赏
  • 举报
回复
永久生成一个日历表,写查询条件也方便
日期,考勤月
...
2015-03-25,201502
2015-03-26,201503
...
2015-04-25,201503
2015-04-26,201504
...


SELECT C.日期, R.数据
FROM 日历表 C
LEFT JOIN 考勤记录 R
ON C.日期 = R.日期
WHERE C.考勤月 = 201503
中国风 2016-05-24
  • 打赏
  • 举报
回复
GUID生成在ACCESS中只能自己写个函数生成 或用rnd()--生成随机值
中国风 2016-05-24
  • 打赏
  • 举报
回复
access 环境一样用法 在库里创建一个辅助表,从1开始 用dateadd('d',id,日期)--生成
卖水果的net 2016-05-24
  • 打赏
  • 举报
回复
access 没有这样的办法; 你可以把 一年(或多年)的每一天,都写到一张表中,就是每天一行; 最后用这个 表和你的考勤表做一个 left join ,这样就可以实现你的效果了;

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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