将int值转换为sql server中的日期时间 [英] convert int values to datetime in sql server

查看:88
本文介绍了将int值转换为sql server中的日期时间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要使用 sql server 转换日期时间中年、月和日的 int 值.

I need to convert the int values of a year, month and day in a datetime using sql server.

实际上我正在使用这个

DECLARE @MONTH INT
DECLARE @YEAR INT
DECLARE @DAY  INT
DECLARE @MAXDATE DATETIME
DECLARE @MINDATE DATETIME

SET @MONTH=12
SET @YEAR=2010
SET @DAY=1


SET @MINDATE=CONVERT(DATE,CAST (@YEAR AS VARCHAR)+ RIGHT ('0'+ CAST (@MONTH AS VARCHAR),2) + RIGHT ('0'+ CAST (@DAY AS VARCHAR),2))

SELECT @MINDATE

并且工作正常,但我想知道是否存在更好的方法来转换这些值.

and works ok, but i'm wondering if exist a better way to convert these values.

推荐答案

这会更简单一些:

select dateadd(month,(@YEAR-1900)* 12 + @MONTH - 1,0) + (@DAY-1)

这篇关于将int值转换为sql server中的日期时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆