How do you print the day name given a day number in SQL Server 2005 using SQL commands?

前端 未结 4 2023
臣服心动
臣服心动 2021-01-14 10:17

I want to be able to pass in a day number like 1, 2, 3 or 7 and it will return the day name like Sunday, Monday, Tuesday or Saturday. I know there is the option of using a <

4条回答
  •  耶瑟儿~
    2021-01-14 10:42

    SQL Server Denali has the CHOOSE function that will make this more concise. In the meantime just use CASE inside the UDF.

    CREATE FUNCTION dbo.WeekDay(@d int)
    RETURNS VARCHAR(9)
    WITH SCHEMABINDING, RETURNS NULL ON NULL INPUT
    AS
    BEGIN
    RETURN 
    (
    SELECT 
        CASE @d
            WHEN 1 THEN 'Sunday'
            WHEN 2 THEN 'Monday'
            WHEN 3 THEN 'Tuesday'
            WHEN 4 THEN 'Wednesday'
            WHEN 5 THEN 'Thursday'
            WHEN 6 THEN 'Friday'
            WHEN 7 THEN 'Saturday'
        END
    )
    END
    

提交回复
热议问题