我想計算兩個日期之間的完成百分比(LeaseStart &租約結束)。計算兩個日期之間的百分比
當前%顯示圖像中的Perentage列僅僅是一個演示數據。
對第4行它顯示100%作爲租賃結束日期是在今年4月,我今天跑了這個。
因此,每當我運行這個基於今天的報告系統應計算LeaseStart & LeaseEnd日期並顯示%。
請幫
感謝
我想計算兩個日期之間的完成百分比(LeaseStart &租約結束)。計算兩個日期之間的百分比
當前%顯示圖像中的Perentage列僅僅是一個演示數據。
對第4行它顯示100%作爲租賃結束日期是在今年4月,我今天跑了這個。
因此,每當我運行這個基於今天的報告系統應計算LeaseStart & LeaseEnd日期並顯示%。
請幫
感謝
DECLARE @table as TABLE(SR INT,LeaseStart DATE,LeaseEnd DATE)
INSERT INTO @table VALUES
(1,'2017-01-01','2021-12-31'),
(2,'2016-10-01','2017-12-31'),
(3,'2013-07-29','2018-06-30'),
(4,'2016-09-13','2017-04-07')
SELECT SR,LeaseStart,LeaseEnd,
DATEDIFF(DAY,LeaseStart,CASE WHEN GETDATE()<LeaseEnd THEN GETDATE() ELSE LeaseEnd END) DaysSoFar,
DATEDIFF(DAY,LeaseStart,LeaseEnd) TotalLease,
CAST((DATEDIFF(DAY,LeaseStart,CASE WHEN GETDATE()<LeaseEnd THEN GETDATE() ELSE LeaseEnd END)*1.00)/
(DATEDIFF(DAY,LeaseStart,LeaseEnd)*1.00)*100.00 AS DECIMAL(6,2)) AS Percentage
FROM @table
將導致
不知道我同意你的顯示結果,但考慮到以下
例
Declare @YourTable table (SRNo int,LeaseStart date,LeaseEnd date)
Insert Into @YourTable values
(1,'2017-01-01','2021-12-31')
,(2,'2016-10-01','2017-12-31')
,(3,'2013-07-29','2018-03-30')
,(4,'2016-09-13','2017-04-07')
,(5,'2017-02-01','2019-01-31')
Select SRNo
,Pct = (DateDiff(DAY,LeaseStart,IIF(GetDate()>=LeaseEnd,LeaseEnd,GetDate()))*100.0)/DateDiff(DAY,LeaseStart,LeaseEnd)
From @YourTable
返回
SRNo Pct
1 10.520547945205
2 62.280701754385
3 84.692082111436
4 100.000000000000
5 22.085048010973
親愛的納迪姆,這個問題是不強硬(只是有點冗長)。我的建議是先嚐試自己解決這些簡單的問題。這對你的學習會有很大的幫助。祝你好運。 – ViKiNG