--最直接的方式就是用case when判断,这里用表变量来处理的
go
--创建函数
create function [dbo].[m_getweek](@date nvarchar(2000))
returns varchar(2000)
AS
begin
declare @weekday nvarchar(300)
declare @table table (id int ,weekday nvarchar(200))
insert into @table
select 0,'星期天' union select 1,'星期一' union select 2,'星期二' union
select 3,'星期三' union select 4,'星期四' union select 5,'星期五' union select 6,'星期六'
select @weekday=weekday from @table where id=(datepart(dw,@date)-1)
return @weekday
end
--测试示例
select [dbo].[m_getweek](getdate()) as 星期
--今天的星期
/*
星期
--------
星期六
*/

本文介绍了一个使用SQL创建的函数,该函数能够将输入的日期转换为对应的星期名称。通过表变量存储星期名称并利用DATEPART函数获取日期的星期部分,从而实现日期到星期的转换。





