Loading

Calculating Difference in Dates Using DATEDIFF Returns Unexpected Results

Data pubblicazione: Feb 21, 2023
Descrizione
Quando si utilizza una funzione DATEDIFF per calcolare la differenza tra due date, i risultati potrebbero non essere corretti.

Cause

La funzione DATEDIFF è calcolata in base all'anno completo e non all'anno parziale. Ad esempio: La data di inizio è giugno 2012 e la data di fine è maggio 2013. L'intervallo di tempo tra le due date precedenti non è un anno completo (solo 11 mesi), tuttavia utilizzando DATEDIFF verrà indicato che la differenza è 1 per l'anno datepart.
Risoluzione
Modifica l'anno utilizzando il seguente calcolo:
IF DATEPART('month',[Sart Date]) < DATEPART('month', [End Date]) THEN [Age (years)]
ELSEIF
((DATEPART('month',[Sart Date])) > (DATEPART('month', [End Date])))
THEN ([Age (years)] -1)
ELSEIF
((DATEPART('day',[Sart Date]) <= DATEPART('day',[End Date]))) THEN [Age (years)]
ELSE ([Age (years)]-1)
END
Numero articolo Knowledge

001473961

 
Caricamento
Salesforce Help | Article