SELECT CONVERT(varchar(11),getdate(),101) -- mm/dd/yyyy
SELECT CONVERT(varchar(11),getdate(),103) -- dd/mm/yyyy
Sprawdź to . Zakładam, że D30.SPGD30_TRACKED_ADJUSTMENT_X ma typ danych datetime .
Dlatego używam CAST()
funkcja, aby zrobić to jako wyrażenie znakowe, ponieważ CHARINDEX()
działa na wyrażaniu znaków.
Myślę też, że nie ma potrzeby warunku 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
EDYCJA:
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
Zobacz ten link do konwersji na inne formaty dat:https://www.w3schools.com/sql /func_sqlserver_convert.asp