当前位置:主页>销售管理软件> 列表

一个关于SQL的时间问题!返回多少个月!

进销存管理软件版1楼: DATEDIFF(MM,BEGIN_DTE,END_DTE)
其中 BEGIN_DTE 是个smalldatetime型的如2005/01/01
END_DTE 在数据库里保存的是char型如200508
现在要返回的是这两个时间间隔的月份的个数! 请大虾指教!

2楼: declare @Date datetime, @DateStr varchar(10)
set @Date = getdate()
set @DateStr = ''200512''
select DATEDIFF(Month, @Date, cast(substring(@DateStr, 1,4) + ''-'' + subString(@DateStr, 5,2) + ''-01'' AS datetime) ) 如速达财务软件

3楼: 还有没有更简单的办法,?顶一下

4楼: 必须要用数据库吗?不能用程序写吗?

5楼: declare @Date datetime, @DateStr varchar(10)
set @Date = getdate()
set @DateStr = ''200512''
select DATEDIFF(Month, CONVERT(varchar(12) , @Date, 112 ), @DateStr )

6楼: declare @Date datetime, @DateStr varchar(10)
set @Date = getdate()
set @DateStr = ''200512''
select DATEDIFF(Month, @Date, CONVERT(datetime , @DateStr, 112 ))

进销存管理软件版7楼: 多人接受答案了。