设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[查询] 请教查询工龄1年以上2年以下的员工有多少人?急!(已解决)

[复制链接]
跳转到指定楼层
1#
发表于 2009-3-4 20:35:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zhangheike 于 2009-3-5 09:15 编辑

各位大侠,请教一个问题,附件中“查询工龄”表中,根据“入厂日期”已求出员工的工龄,但没法查询出如:6个月到1年以内工龄的员工有多少人,或1年以上到2年以下工龄的员工有多少人,等。
谢谢你们了!

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-3-4 20:41:19 | 只看该作者
  1. SELECT Count(全体员工.序号) AS 人数
  2. FROM 全体员工
  3. WHERE (((Year(Date())-Year([进厂日期])) Between 1 And 2));
复制代码

本帖子中包含更多资源

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

x
3#
 楼主| 发表于 2009-3-4 20:58:50 | 只看该作者
版主您好!上面例子中,我求的是例如:   6个月以下有多少人?
                                       6个月以上1年以下有多少人?
                                       1年以上2年以下有多少人?
                                       2年以上5年以下有多少人?
                                       5年以上8年以下有多少人?
                                       8年以上10年以下有多少人?   10年以上有多少人?  谢谢你了,麻烦您再帮我看看啊!在线等!
4#
发表于 2009-3-4 21:01:28 | 只看该作者
学习了。
5#
发表于 2009-3-4 22:16:51 | 只看该作者
建议这种简单问题直接在贴子中说明表结构,记录样本和期望的结果。附件只是辅助作用。

根据 2# 楼的猜一下你的表结构。猜错了你就自己改一下吧。

select Switch(
    DateDiff('m', 进厂日期,Date())<6,'6个月以下',
    DateDiff('m', 进厂日期,Date())<12,'6个月及以上1年以下',
    DateDiff('m', 进厂日期,Date())<24,'1年及以上2年以下',
    DateDiff('m', 进厂日期,Date())<60,'2年及以上5年以下',
    DateDiff('m', 进厂日期,Date())<96,'5年及以上8年以下',
    DateDiff('m', 进厂日期,Date())<120,'8年及以上10年以下',
    DateDiff('m', 进厂日期,Date())>=120,'10年及以上'
    ) as period, count(*)
from 全体员工
group by Switch(
    DateDiff('m', 进厂日期,Date())<6,'6个月以下',
    DateDiff('m', 进厂日期,Date())<12,'6个月及以上1年以下',
    DateDiff('m', 进厂日期,Date())<24,'1年及以上2年以下',
    DateDiff('m', 进厂日期,Date())<60,'2年及以上5年以下',
    DateDiff('m', 进厂日期,Date())<96,'5年及以上8年以下',
    DateDiff('m', 进厂日期,Date())<120,'8年及以上10年以下',
    DateDiff('m', 进厂日期,Date())>=120,'10年及以上'
    )




******************
*  一切皆有可能  *
******************

.
ACMAIN - Access论坛回贴准则(个人).
.

.
QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/BList/OtherDatabase .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
http://www.office-cn.net .
.
http://www.office-cn.net/home/space.php?uid=141646 .
6#
发表于 2009-3-5 07:27:15 | 只看该作者
本帖最后由 sgrshh29 于 2009-3-5 07:30 编辑

SELECT Partition(DateDiff('m', 全体员工.进厂日期,Date()),1,60,6) AS 月份区间, Count(全体员工.姓名) AS 数量
FROM (select distinct 全体员工.姓名,全体员工.进厂日期 from 全体员工)
GROUP BY Partition(DateDiff('m', 全体员工.进厂日期,Date()),1,60,6)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-1-9 14:16 , Processed in 0.091145 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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