微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sqlserver中返回旬开始日期和结束日期的函数

这段时间的项目用到了sql server,于是一边学习,一边开发;

今天学习了函数的创建,该函数功能如题所示;

USE [EUC]
GO

/****** Object:  UserDefinedFunction [dbo].[get_xun]    Script Date: 06/06/2014 16:38:04 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:  <Author>
-- Create date: <Create Date,2014-06-06>
-- Description: <Description,">
-- Parameter desc: @date 输入’yyyy-mm-dd’ ;@startorend 1代表旬开始,其他数字代表旬结束
-- =============================================
CREATE  FUNCTION  [dbo].[get_xun]
(
@date date,@startorend int
)
RETURNS date
as
    BEGIN
 declare
    @return_date date,
    @year int,
    @month int,
    @day  int
    set @year=(select YEAR(@date))
    set @month=(select MONTH(@date))
    set @day=(select DAY(@date))
       
   if @startorend=1
      if @day<=10 
             set @return_date=(select dateadd(dd,-day(@date)+1,@date) )
        else if @day<=20
             set @return_date=(select dateadd(dd,-day(@date)+11,@date) )
        else
             set @return_date=(select dateadd(dd,-day(@date)+21,@date) )
     
   else   
      if @day<=10
             set @return_date=(select dateadd(dd,-day(@date)+10,@date) )
         else if @day<=20 
             set @return_date=(select dateadd(dd,-day(@date)+20,-1,dateadd(m,1,dateadd(dd,@date))))
        
      RETURN @return_date     
 END

GO



版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐