Tek basamaklı gün ve ayı sıfırlı olarak yazmıyor. '0'||CAST(...) şeklinde yapabilirsin fakat burda da 10 ve yukarısı değerler için sıfırı eklememesini if veya iif kontrol edebilirsin. Burada işi direkt select içinde değil de SP veya Trigger içinden yapıyorsan daha rahat olabilirsin.
SELECT
CASE
WHEN DAY(Tarih) < 10 THEN '0' + CONVERT(VARCHAR, DAY(Tarih))
ELSE CONVERT(VARCHAR, DAY(Tarih))
END +
CASE
WHEN MONTH(Tarih) < 10 THEN '0' + CONVERT(VARCHAR, MONTH(Tarih))
ELSE CONVERT(VARCHAR, MONTH(Tarih))
END +
CONVERT(VARCHAR, YEAR(Tarih)) AS NewTarih
FROM
TableName