[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