2003-1-1 7:30 转为 010107.30
2003-1-1 8:00 转为 010108
2003-11-10 18:00 转为 111018
满足以上转换方式即可
谢谢各位大虾。。。
建一函数FormatDate,传入参数为你要转换的日期时间 CREATE FUNCTION FormatDate (@Date VARCHAR(20)) RETURNS VARCHAR(20) AS BEGIN DECLARE @YEAR CHAR(2), @MONTH CHAR(2), @DAY CHAR(2), @HOUR CHAR(2), @MINUTE CHAR(3)
--SET @YEAR=RIGHT(DATEPART(YYYY,@DATE),2) SET @MONTH=DATEPART(MM,@DATE) IF LEN(@MONTH)=1 SET @MONTH='0' + @MONTH SET @DAY=DATEPART(DD,@DATE) IF LEN(@DAY)=1 SET @DAY='0' + @DAY
SET @HOUR=DATEPART(HH,@DATE) IF LEN(@HOUR)=1 SET @HOUR='0' + @HOUR
SET @MINUTE=DATEPART(MI,@DATE) IF @MINUTE='0' SET @MINUTE='' ELSE BEGIN IF LEN(@MINUTE)=1 SET @MINUTE='0' + @MINUTE SET @MINUTE=('.' + @MINUTE) END RETURN(@MONTH + @DAY + @HOUR + @MINUTE) END 用法 SELECT dbo.FormatDate('2003-1-1 7:00') 返回 010107 SELECT dbo.FormatDate('2003-1-1 7:30') 返回 010107.30 SELECT dbo.FormatDate('2003-12-18 7:00') 返回 121807
[此贴子已经被作者于2005-4-11 23:56:47编辑过]