设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1187|回复: 7
打印 上一主题 下一主题

[查询] 新手请教一句在access的sql

[复制链接]
跳转到指定楼层
1#
发表于 2010-12-10 11:42:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
insert into TS部门人员活动时间总览表 (人员名称, 时间, 地区, 活动名称)
select TS部门人员活动表.人员名称, TS部门人员活动表.到达时间 + 32, TS部门人员活动表.到达的目的地, TS部门人员活动表.活动名称  from TS部门人员活动表
where TS部门人员活动表.到达时间 <= #2010-12-3# and TS部门人员活动表.到达时间 +32 >= #2010-11-1# and
case when TS部门人员活动表.离开时间 <=#2010-12-3# then ( where TS部门人员活动表.到达时间 +32 <= TS部门人员活动表.离开时间)
else ( where TS部门人员活动表.到达时间 +32 <= #2010-12-3# )
end

说语法错误,操作符丢失,实在是当局者迷,请各位高人指点,谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2010-12-10 13:40:56 | 只看该作者
请上传附件~~
3#
发表于 2010-12-10 14:12:20 | 只看该作者
bqq 发表于 2010-12-10 11:42
insert into TS部门人员活动时间总览表 (人员名称, 时间, 地区, 活动名称)
select TS部门人员活动表.人员 ...

时间和日期的加减法,需要用DateAdd函数。你在VB设计视图下,搜索一下该函数的用法,就什么都明白了。
4#
 楼主| 发表于 2010-12-10 14:40:42 | 只看该作者
谢谢大大。我是access 2007环境的。试过不用case那部分是可以运行的。感觉是case那里有什么问题,因为自己写的,是在自己看不出来。。。求救。谢谢

点击这里给我发消息

5#
发表于 2010-12-10 19:24:10 | 只看该作者
ACCESS的SQL语句中没有case、else、end等关键词吧
6#
发表于 2010-12-11 17:36:28 | 只看该作者
case那部分可用iif函数代替
7#
 楼主| 发表于 2010-12-11 20:04:59 | 只看该作者
感谢aslxt的建议,确实我用iif实现了 。可能access的sql不支持case把。谢谢
并且用到了嵌套
iif (nz(TS部门人员活动表.离开时间,0)=0,TS部门人员活动表.到达时间 +15<=#2010-12-16#,iif (TS部门人员活动表.离开时间 <=#2010-12-16#,TS部门人员活动表.到达时间 +15 <= TS部门人员活动表.离开时间,TS部门人员活动表.到达时间 +15<=#2010-12-16#))
8#
发表于 2010-12-11 23:29:45 | 只看该作者
回复 bqq 的帖子

是的,case 不能用于access!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 12:42 , Processed in 0.078621 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表