我有以下临时表
CREATE TABLE #t ( ID INT, V FLOAT, D DATE )
INSERT INTO #t
VALUES ( 1, 1, '2014-07-01' ),
( 1, 2, '2014-08-02' ),
( 1, 3, '2014-09-03' ),
( 2, 7, '2014-10-31' ),
( 2, 5, '2014-11-28' ),
( 2, 8, '2014-12-31' ),
( 2, 11, '2015-01-30' );
我想从今天的日期(即2015年3月14日)开始查找临时数据库中每个记录的月份差异。最终表应如下所示:
( 1, 1, '2014-07-01', 9),
( 1, 2, '2014-08-02', 8),
( 1, 3, '2014-09-03', 7),
( 2, 7, '2014-10-31', 6 ),
( 2, 5, '2014-11-28', 5),
( 2, 8, '2014-12-31', 4),
( 2, 11, '2015-01-30', 3);
为此记录(2,11,'2015-01-30',3); 日期是1月,而我的当前月份是3月,所以3月-2015年1月应为3。
任何建议都会有所帮助。
尝试
DATEDIFF(MONTH, D, GETDATE())
尽管您可能需要在结果中添加一个,以获得所需的结果,但“ MONTH”参数要求使用数月的时间。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句