SELECT CONVERT(varchar(11),getdate(),101) -- mm/dd/yyyy
SELECT CONVERT(varchar(11),getdate(),103) -- dd/mm/yyyy
Überprüfen Sie dies . Ich gehe davon aus, dass D30.SPGD30_TRACKED_ADJUSTMENT_X vom datetime-Datentyp ist.
Deshalb verwende ich CAST()
Funktion, um es als Zeichenausdruck zu machen, weil CHARINDEX()
Funktioniert mit Zeichenausdruck.
Außerdem denke ich, dass keine ODER-Bedingung erforderlich ist.
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
BEARBEITEN:
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
Siehe diesen Link für die Konvertierung in andere Datumsformate:https://www.w3schools.com/sql /func_sqlserver_convert.asp