设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] [求助]怎样查询总年假数

[复制链接]
跳转到指定楼层
1#
发表于 2007-2-15 00:28:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如图所示

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2007-2-15 01:03:00 | 只看该作者
本人只会用二个查询做,第二个查询“年假总天数”。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
3#
发表于 2007-2-15 01:08:00 | 只看该作者
SELECT 基本信息表.工号, 基本信息表.姓名, 基本信息表.入职日期, 级别天数.年假天数, Fix(DateDiff("d",[基本信息表].[入职日期],Format(Now(),"yyyy-mm-dd"))/365) AS 工龄, DLookUp("年假增加数","年假增加","[工龄]=" & [工龄])+[年假天数] AS 年假总数
FROM 级别天数 INNER JOIN 基本信息表 ON 级别天数.级别 = 基本信息表.级别;
4#
 楼主| 发表于 2007-2-15 19:17:00 | 只看该作者
谢谢两位的大力帮忙,祝Joe5525601大虾和一点通高人及各位论坛水友春节快乐:)
5#
 楼主| 发表于 2007-2-15 20:44:00 | 只看该作者
用一点通大师的方法会有如图的弊端,但是计算的速度快。在这信息爆炸的时代,快速度是体现优势的最好方式。用以下的思路——SELECT 基本信息表.工号, 基本信息表.姓名, 基本信息表.入职日期, 级别天数.年假天数, DateDiff("d",基本信息表.入职日期,Format(Now(),"yyyy-mm-dd"))/365 AS 工龄, IIf(级别天数.年假天数=12,IIf([工龄]>0 And [工龄]<0.5,0,IIf([工龄]>=0.5 And [工龄]<1,6,IIf([工龄]>=1 And [工龄]<=3,12,IIf([工龄]>3 And [工龄]<=6,14,IIf([工龄]>6 And [工龄]<=10,16,IIf([工龄]>10,18)))))),IIf(级别天数.年假天数=10,IIf([工龄]>0 And [工龄]<0.5,0,IIf([工龄]>=0.5 And [工龄]<1,5,IIf([工龄]>=1 And [工龄]<=3,10,IIf([工龄]>3 And [工龄]<=6,12,IIf([工龄]>6 And [工龄]<=10,14,IIf([工龄]>10,16)))))))) AS 年假总数
FROM 级别天数 INNER JOIN 基本信息表 ON 级别天数.级别=基本信息表.级别——就可以解决下图的弊端,但是会不会由于语言过多而导致计算的速度减慢呢,如果是的话有没有一种折中的方式呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
发表于 2007-2-15 22:00:00 | 只看该作者
在"年假增加表"中增加一个"0"年的数据

或先判断"年假增加"表中是否存在对应的数据,没有的话就只用"年假天数"

使用以上方法就可解决这个问题
7#
 楼主| 发表于 2007-2-15 23:30:00 | 只看该作者
有道理,果然是高人。那关于半年假这点我又该怎样处理呢
8#
发表于 2007-2-15 23:43:00 | 只看该作者
选判断年数是否为零,是的话改用月份相减,如大于6,表的数据改为0.5,休息根据这个条件将休息除2......

其实方法很多,这只是其中之一

[此贴子已经被作者于2007-2-15 15:51:48编辑过]

9#
 楼主| 发表于 2007-2-16 00:08:00 | 只看该作者
一点通大师,就是因为方法很多,您能否给一个您认为比较优化的具体例子给到我们这些菜鸟参考一下呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-1-26 17:05 , Processed in 0.223611 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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