Это потому, что FORMAT()
не является встроенной функцией в SQL 2005. Вам необходимо использовать функцию CONVERT()
:
SELECT
EmpId,
EmpName,
REPLACE(CONVERT(VARCHAR(10), EmpJoinDate, 102), '.', '-') AS date
FROM
Employee
Несколько предостережений, хотя ... "дата"Я верю, что это зарезервированное слово, поэтому я бы не советовал использовать его даже в качестве псевдонима столбца.Также вышесказанное фактически дает YYYY-MM-DD.YYYY-DD-MM довольно редкий, я считаю.Если вы действительно этого хотите, вам нужно либо объединить вещи вместе с функциями DATEPART
и CAST
, либо объединить вещи, используя SUBSTRING
с CONVERT
.
.и вы сможете найти все поддерживаемые форматы.Тот, который я использовал выше (102), предназначен для YYYY.MM.DD, поэтому я сделал замену, чтобы вместо этого дать дефисы.