• Maybe something like this could perform better, based on the following article:

    http://www.sqlservercentral.com/articles/T-SQL/91724/

    CREATE FUNCTION [dbo].[DateFormattedByMask]

    (

    @InputDate DATETIME,

    @Mask NVARCHAR(80)

    )

    RETURNS TABLE

    AS

    RETURN

    (

    SELECT Mask = REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(

    REPLACE(@Mask,'hh', RIGHT('0'+DATENAME(hh,@InputDate),2))

    ,'mi', RIGHT('0'+DATENAME(mi,@InputDate),2))

    ,'ss', RIGHT('0'+DATENAME(ss,@InputDate),2))

    ,'YYYY',DATENAME(YEAR,@InputDate))

    ,'YY',RIGHT(DATENAME(YEAR,@InputDate),2))

    ,'MMMM', DATENAME(MONTH,@InputDate))

    ,'MMM', LEFT(DATENAME(MONTH,@InputDate),3))

    ,'MM', RIGHT('0'+CAST(MONTH(@InputDate) AS NVARCHAR(2)),2))

    ,'DDDD', DATENAME(dw,@InputDate))

    ,'DDD', LEFT(DATENAME(dw,@InputDate),3))

    ,'DD', RIGHT('0'+DATENAME(DAY,@InputDate),2))

    )

    GO

    EDIT: format and minute code issues.

    Luis C.
    General Disclaimer:
    Are you seriously taking the advice and code from someone from the internet without testing it? Do you at least understand it? Or can it easily kill your server?

    How to post data/code on a forum to get the best help: Option 1 / Option 2