SELECT CONVERT(varchar(11),getdate(),101) -- mm/dd/yyyy
SELECT CONVERT(varchar(11),getdate(),103) -- dd/mm/yyyy
Koukni na tohle . Předpokládám, že D30.SPGD30_TRACKED_ADJUSTMENT_X je datového typu datetime.
Proto používám CAST()
funkce, aby to bylo jako znakový výraz, protože CHARINDEX()
funguje na výrazu znaků.
Také si myslím, že není potřeba podmínka 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
EDIT:
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
Pro převod na jiné formáty data viz tento odkaz:https://www.w3schools.com/sql /func_sqlserver_convert.asp