Access交流中心

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

怎么做一个显示当月数据的查询

李谦  发表于:2010-02-11 12:59:41  
复制

各位老师好!

才用Access不久,对这个软件不是很熟悉,培训的书也不是很全面地能够解决实际遇到的问题,希望各位前辈不吝赐教!

 

我希望:

 

基于“生日表”,每月1日打开“生日提示”查询,可以看到当年当月过生日的人的姓名,生日日期...(也就是表里的字段名)

 

先前用过select * from 表table where 日期date between '20080612'and '20080613'[/quote]    语句,但是提示我语句有误,我也不知道错在哪里,5555~~~

 

 

最好能用简单易懂一点的方法,嘿嘿~~

先谢谢~~

 

Top
游子 发表于:2010-02-11 13:29:38

首先你得确认“生日日期”这个字段是什么数据类型的

1、文本类型:select * from 生日表 where [生日日期] between "20080612" and "20080613";

2、日期类型:select * from 生日表 where [生日日期] between #6/12/2008# and #6/13/2008#;



李谦 发表于:2010-02-11 15:51:33

谢谢哦!

但是我并不是需要看到某一段时间的信息,(只是在其他地方看到这个语句貌似比较符合我的要求,)

我只是希望打开就可以看到当月的,而不需要我手动去改语句里的日期~~~

 



老邹 发表于:2010-02-11 16:34:30
select * from 生日表 where month([生日日期])=month(date())

李谦 发表于:2010-02-11 16:52:27

谢谢

试了一下,保存的时候(切换到视图界面的时候跳出来这个提示...)



李谦 发表于:2010-02-11 16:55:47

说表达式中的子查询语法是错误的

检查子查询语法并将子查询括在圆括号里

我是按3楼的一字不差的填在“查询”的' 条件" 里的



王樵民 发表于:2010-02-11 17:39:41

使用如下查询

SELECT 生日表.姓名, 生日表.生日日期
FROM 生日表
WHERE (((Month([生日日期]) & Day([生日日期]))=Month(Now()) & Day(Now())))
ORDER BY 生日表.生日日期 DESC;

附件中的示例可解决你的问题,供参考。

点击下载此附件

王樵民 发表于:2010-02-11 17:50:32

附件中的示例可解决你的问题,“生日表按日查询”可查询出当日过生日的人员,“生日表按月查询”可查询出当月过生日的人员,供参考。

点击下载此附件

studypm 发表于:2010-03-22 00:47:06

受教了,谢谢各位



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