SELECT CONVERT(varchar(11),getdate(),101) -- mm/dd/yyyy
SELECT CONVERT(varchar(11),getdate(),103) -- dd/mm/yyyy
Periksa ini . Saya berasumsi D30.SPGD30_TRACKED_ADJUSTMENT_X adalah tipe data datetime .
Itulah sebabnya saya menggunakan CAST()
berfungsi untuk menjadikannya sebagai ekspresi karakter karena CHARINDEX()
bekerja pada ekspresi karakter.
Saya juga berpikir tidak perlu kondisi 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
Lihat tautan ini untuk konversi ke format tanggal lain:https://www.w3schools.com/sql /func_sqlserver_convert.asp