如何查看結果日期時間DATEDIFF DATEADD,但超出範圍的值
我現在嘗試比較日期和開始日期從master_employee工作。 但我失敗了......
如果在行我寫
select @date = date_start
from Master_Employee
where id = '2'
的更迭。 但我希望可以查看Master_Employee表中的所有結果。
你能幫助我嗎? 感謝的非常..
DECLARE @date DATETIME
,@tmpdate DATETIME
,@years INT
,@months INT
,@days INT
SELECT @date = date_Start
FROM Master_Employee
SELECT @tmpdate = @date
SELECT @years = DATEDIFF(yyyy, @tmpdate, GETDATE()) - CASE
WHEN (MONTH(@date) > MONTH(GETDATE()))
OR (
MONTH(@date) = MONTH(GETDATE())
AND DAY(@date) > DAY(GETDATE())
)
THEN 1
ELSE 0
END
SELECT @tmpdate = DATEADD(yyyy, @years, @tmpdate)
SELECT @months = DATEDIFF(mm, @tmpdate, GETDATE()) - CASE
WHEN DAY(@date) > DAY(GETDATE())
THEN 1
ELSE 0
END
SELECT @tmpdate = DATEADD(mm, @months, @tmpdate)
SELECT @days = DATEDIFF(dd, @tmpdate, GETDATE())
SELECT @years AS Years
,@months AS Months
,@days AS Dayss
,GETDATE() AS Date_Now
請發佈您的SQL作爲文本。 – 2015-04-01 10:53:42
好吧,我已經編輯我的問題.... btw謝謝.. – SimanisJKT48 2015-04-01 10:58:16
你究竟想要達到什麼目的? – 2015-04-01 10:59:34