Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

如何获取两个日期段之间的记录

benhum  发表于:2014-02-18 16:01:10  
复制

有"休假记录表"如下:

姓名     开始休假日期      截止休假日期

  A               2-1                 2-3

  B               2-2                 2-4

  C               2-3                 2-5

  D               2-4                 2-6

  E               2-5                 2-7

  F               2-1                 2-10

上表中,如何获取查询2-3这一天请假的人,得到如下记录:

姓名     开始休假日期      截止休假日期

  A               2-1                 2-3

  B               2-2                 2-4

  C               2-3                 2-5

  F               2-1                 2-10

请教各位,这个查询如何做?

 

Top
煮江品茶 发表于:2014-02-18 16:32:34

1、将两个日期字段的数据类型改为日期型

2、写查询:

select * from 休假记录表 where 开始休假日期<=#3/2/2014# And 截止休假日期>=#3/2/2014#



zhaoyoulong 发表于:2014-02-18 16:41:20

跨年度休假怎么办?连个年度都没有!!!!

所谓的  开始休假日期      截止休假日期 只是一个文本类型的字段

同月还好算 将“-”后面的数字提取出来做减法加1就行

不同月就麻烦了!!!!总之 表的字段设计的问题。。。。。。。最好设成日期格式然后用

DateDiff("d", [开始休假日期], [ 截止休假日期])
就好了
	

姓名     开始休假日期      截止休假日期 休假天数:DateDiff("d", [开始休假日期], [ 截止休假日期])

  A               2-1                 2-3

  B               2-2                 2-4

  C               2-3                 2-5

  F               2-1                 2-10




benhum 发表于:2014-02-18 16:46:12

谢谢版主启发。

这个查询看起来不是很高深,主要是本人的思路不够开阔、不够清晰。

版主高明。谢谢了。



benhum 发表于:2014-02-18 16:51:11

由于不上传示例,写成文本只图方便看数据,实际应用是日期类型。

也谢谢zhaoyoulong 的关注。



总记录:4篇  页次:1/1 9 1 :