[SQL ] 如何判断员工的年资

楼主: HankJiang (没人要的呆江)   2015-08-04 20:05:42
数据库名称:oracle
内容/问题描述:
新手上路~问个应该很基础但我目前搞得有点乱的问题
假设有个字段是员工开始工作的日期资料(假设是 Datenote)
而我们要把10>年资>3的员工挑出来
该怎么写判断式?
目前学的都是数值.字串的判断式
突然想到有"日期.时间"这个资料型态~
但不太清楚怎么去做这方面的加减.判断运算
是用( datediff(day,Datenote,getdate())/365 )>3 and
( datediff(day,Datenote,getdate())/365 )<10 吗?
还是datediff(year,Datenote,getdate())>3 and
datediff(year,Datenote,getdate())<10 也可以呢?
先谢谢大家0.0
另外...两个日期间可以直接用 ">" "<"之类的运算子来比较吗?
作者: shadow0828 (Vugtis Of Shadow)   2015-08-04 20:08:00
要多细阿 话说你神教二次如何
楼主: HankJiang (没人要的呆江)   2015-08-04 20:11:00
细? 二面明天要去...这部分是我自己想到的练习题(判断这个应该也很常见!?)就...想知道如果要用到判断员工"年资"~该怎么去做判断
作者: kattte (诚实面对自己吧!)   2015-08-04 22:09:00
年资>3 and 年资<10 这样可以吗阿 不好意思 没注意到是oracleoracle我不太清楚 但你可以计算出他年资几年之后指定年资要在你设的范围内 这是可以的
楼主: HankJiang (没人要的呆江)   2015-08-04 22:18:00
可以举个例子吗...资质驽顿...是指年资大于10年:add_months(开始工作日期,120) < SYSDATE吗0.0?
作者: kattte (诚实面对自己吧!)   2015-08-06 22:31:00
我是用mysql, oracle的语法怎么下我不清楚SELECT * FROM student WHERE (TO_DAYS(NOW()) -- TO_DAYS(`Birth_Date`)) >(40*365)今天 - 生日 > 40*365(天)我的资料里面有 1982年 1950年 这样就能筛选出 1950的
楼主: HankJiang (没人要的呆江)   2015-08-07 06:56:00
365可是闰年呢!?还是不差那几天!?
作者: kattte (诚实面对自己吧!)   2015-08-08 00:07:00
不差那一天吧
作者: hhhomerun (HOMERUN家族哥哥)   2015-08-09 02:27:00
我只会查10>年资>3的正妹员工 不会查10>年资>3的员工QQ
楼主: HankJiang (没人要的呆江)   2015-08-11 08:06:00
那...要如何查10>年资>3的正妹员工呢!?
作者: pooznn (我~~~是来被打脸滴!!!)   2015-08-11 15:52:00
有些公司还有年资调整或留职的问题
作者: kattte (诚实面对自己吧!)   2015-08-13 00:53:00
不就 10 > 年资 and 年资 > 3
楼主: HankJiang (没人要的呆江)   2015-08-13 12:15:00
没有年资这一项阿...只有给到职日的话...

Links booklink

Contact Us: admin [ a t ] ucptt.com