sql精确事件函数

USE [JSIDC_EquipmentManage]
GO
/****** 对象:  UserDefinedFunction [dbo].[fn_DateFormat]    脚本日期: 09/18/2007 15:41:06 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO

/****** 对象:  用户定义的函数 dbo.fn_DateFormat    脚本日期: 2007-4-5 14:35:38 ******/
/**********************************************************************************
    自定义函数名称:fn_DateFormat
    功          能:将日期定位到当天的开始(参数值:0)2005-1-1 00:00:00
                 或当天的结束(参数值:1)2005-1-1 23:59:59
    参          数:@Expression nvarchar(4000)
    返  回  参  数:nvarchar(4000)
    调    用    者:当需要对精确到时分秒的数据进行比较时
    编          者:miaojun        时      间:2005-3-6
    修    改    人:ZHULEI                 修 改 时 间:
   **********************************************************************************/
ALTER   FUNCTION [dbo].[fn_DateFormat]
(
 @Date  DATETIME,
 @Format     BIT

RETURNS  DATETIME
 AS 
--代码部分------------------------------------------
BEGIN
 DECLARE @_strStart  VARCHAR(1000)
 DECLARE @_strEnd  VARCHAR(1000)
 DECLARE @_DateTime  DATETIME
 IF @Format=0
     --转换成当天的开始时刻-----------
     BEGIN
  SELECT @_strStart=LTRIM(RTRIM(STR(YEAR(@Date))))+'-'+
     LTRIM(RTRIM(STR(MONTH(@Date))))+'-'+
     LTRIM(RTRIM(STR(DAY(@Date))))+' 00:00:00'
  SELECT @_DateTime=CONVERT(datetime,@_strStart,120)
  
     END
 
 ELSE
    
     --转换成当天的开始时刻-----------
     BEGIN
  SELECT @_strEnd=LTRIM(RTRIM(STR(YEAR(@Date))))+'-'+
     LTRIM(RTRIM(STR(MONTH(@Date))))+'-'+
     LTRIM(RTRIM(STR(DAY(@Date))))+' 23:59:59'
  SELECT @_DateTime=CONVERT(datetime,@_strEnd,120)
  
     END 
 
 RETURN @_DateTime
END


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值