您好:
請問MSSQL 中,有關人差勤計算想請教
2024-06-10 端午節,
要算一個人是否滿3個月 ,
Q1.這3個月,應該是以月來計算?
Q2.若以月來計算,則
2024-06-10 語法,減3個月, 他是 2024-03-10
但他入職2024-03-09起,才算滿3個月?
有這種語法嗎? 要先-3MONTH,再-1天?
SELECT DATEADD(MONTH,-3, CONVERT(DATETIME, '2024-06-10')),
DATEDIFF(MONTH, CONVERT(DATETIME, '2024-06-10'), CONVERT(DATETIME, '2024-03-09') ),
DATEDIFF(MONTH, CONVERT(DATETIME, '2024-06-10'), CONVERT(DATETIME, '2024-03-29') )
依據2024-06-10 端午節,要算一個人是否滿3個月。
我猜想情境應該是:要發放端節禮金,條件是需到職滿3個月的同仁。
以2024-06-10結算點,減3個月, 就是2024-03-10
只是到職日在2024-03-10(含)以前的人員,視為到職滿3個月
您好:
謝謝
另外,順便一問
2023-04-05到職
DATEADD(YEAR,1 ,'2023-04-05')
他應該是 2024-04-05 滿一年 有年休假?
還是 2024-04-04 滿一年,2024-04-05 有年休假
謝謝
@Block Blast Solver 在大多數情況下,「滿 3 個月」通常是按月份來計算,而非具體的天數。比如:
2024-06-10 減去 3 個月,得到的日期是 2024-03-10。
若入職日期為 2024-03-09,則滿 3 個月,否則不滿。
這樣的計算方式比較常見,因為月份的長度不同(如 28、30、31 天),以月份為單位會更簡單。
@ Retro Bowl 您的推算是正確的!以2024-06-10為結算日,往前推3個月,即2024-03-10。凡是在2024-03-10(含)以前到職的同仁,皆視為到職滿3個月,符合發放端午節禮金的條件。
In retro bowl, every game is a new story waiting to unfold, filled with dramatic moments and unforgettable plays that will keep you coming back for more!
When working with MSSQL, calculating a 3-month period can be tricky, but it’s essential for accurate data analysis. If you’re looking for a quick break, you can always unwind with some fun on poki. They’re a great way to relax after tackling complex queries. By the way, does anyone have tips for optimizing date-based calculations in MSSQL?