Access交流中心

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

要显示 多字段条件 不为空的记录

惰惰  发表于:2010-08-15 14:35:08  
复制

这是一个选择查询,我要显示"迟到/早退","缺时/超时","缺考勤"这三个字段任一字段为不空的所有记录,也就是有迟到或早退或缺时或超时或缺考勤记录的都显示出来,那些正常考勤的就不显示了

 

如果是一个字段的话我会在查询里写参数 is not null,但这种三个字段的这样写就不对了,在"迟到/早退"里这样设置了之后,没有迟到/早退但有缺时/超时或缺考勤也不
显示了,请这里的专家们教教我怎么弄

发现这个论坛太好了,一下子提了好多问题,困扰多年的,呵呵

 

Top
云游天下 发表于:2010-08-15 15:29:19

用Or来表示,

即在这三个字段列的不同行中,使用“Is Not Null”



蒋元根 发表于:2010-08-15 16:10:21

供参考:

SELECT 考勤.日期, 考勤.日期属性, 考勤.上班, 考勤.下班, 考勤.工作时间, 考勤.[迟到/早退], 考勤.[缺时/超时], 考勤.缺考勤
FROM 考勤
WHERE (((IIf(IsNull([考勤]![迟到/早退]),0,1)+IIf(IsNull([考勤]![缺时/超时]),0,1)+IIf(IsNull([考勤]![缺考勤]),0,1))>0));

点击下载此附件

惰惰 发表于:2010-08-15 18:01:05

感谢版主这么快的回复

 

你是怎么把我的图片变成表的啊,什么软件这么好用啊

其他我都明白,但这个语句中的0,1各代表什么意思,还有最后的>0是什么意思,能和我详细说一下吗,以后我好懂得怎么套用了

 

谢谢



蒋元根 发表于:2010-08-15 19:27:48

问题1:你是怎么把我的图片变成表的啊,什么软件这么好用啊

答:没有什么软件,是重新做的表,,重新输入的数据,如果可以的话,请今后把你的数据库发上来,可以让回答问题的人,少花点时间,我是退休工人,时间比较空,其他人可能比较忙,谢谢了.

问题2:其他我都明白,但这个语句中的0,1各代表什么意思,还有最后的>0是什么意思

答:IIf(IsNull([考勤]![迟到/早退]),0,1)就是[考勤表]的[迟到/早退]如果是null()就为数字0,否则就为数字1,WHERE() >0 是查询的条件,如果三个字段的数字相加大于0,就是"迟到/早退","缺时/超时","缺考勤"这三个字段任一字段为不空的所有记录就显示数据.

供参考



惰惰 发表于:2010-08-15 19:42:00

 原来老师是手工做的,真不好意思,添麻烦了,以后知道了

再次谢谢老师这么详细的回复



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