SELECT CONVERT(varchar(11),getdate(),101) -- mm/dd/yyyy
SELECT CONVERT(varchar(11),getdate(),103) -- dd/mm/yyyy
Verificare questo . Presumo che D30.SPGD30_TRACKED_ADJUSTMENT_X sia di tipo datetime.
Ecco perché sto usando CAST()
funzione per renderlo un'espressione di carattere perché CHARINDEX()
funziona sull'espressione dei caratteri.
Inoltre penso che non sia necessaria la condizione OR.
select case when CHARINDEX('-',cast(D30.SPGD30_TRACKED_ADJUSTMENT_X as varchar )) > 0
then 'Score Calculation - '+CONVERT(VARCHAR(11), D30.SPGD30_TRACKED_ADJUSTMENT_X, 103)
end
MODIFICA:
select case when CHARINDEX('-',D30.SPGD30_TRACKED_ADJUSTMENT_X) > 0
then 'Score Calculation - '+
CONVERT( VARCHAR(11), CAST(D30.SPGD30_TRACKED_ADJUSTMENT_X as DATETIME) , 103)
end
Vedere questo collegamento per la conversione in altri formati di data:https://www.w3schools.com/sql /func_sqlserver_convert.asp