![](/img/trans.png)
[英]How to subtract Sys with Timestamp from field and get hours and minutes
[英]How to subtract minutes from datetime field in SQL
試圖弄清楚如何從日期時間字段中減去分鍾。
select
'1' as PPCONO, b.new_SalesrepId as PPREP1,
MAX(a.ActualEnd - c.TimeZoneBias) as PPDATE,
count(b.new_SalesrepId) as PPCOUNT
from
ActivityPointerBase as a
join
SystemUserExtensionBase as b on b.SystemUserId = a.OwnerId
join
UserSettingsBase as c on c.SystemUserId = b.SystemUserId
where
b.new_SalesrepId <> '99999999'
and a.ActivityTypeCode = '4201'
and b.new_SalesrepId is not NULL
and a.StateCode = '1'
and CONVERT(varchar(8), a.ActualEnd, 112) = '20140627'
group by
b.new_SalesrepId, CONVERT(varchar(8), a.ActualEnd, 112)
order by
b.new_SalesrepId ASC;
從上面的代碼中,部分MAX(a.ActualEnd - c.TimeZoneBias)
其中a.ActualEnd是輸入的日期時間字段,而c.TimeZoneBias是我想減去的分鍾數。 每次運行它,它都會減去幾天而不是幾分鍾。 在這種情況下,c.TimeZoneBias的實際值為'300',因此它減去了300天而不是300分鍾。
我發現最簡單的方法是使用算術:
MAX(a.ActualEnd - c.TimeZoneBias / cast(24 * 60 as float)) as PPDATE
這會將TimeZoneBias
轉換為一天的一部分。
使用DATEADD
減去特定間隔的特定數目,如下所示:
DATEADD(minute, (-1 * c.TimeZoneBias), a.ActualEnd )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.