Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 获取列位于YYYYMM数字数据类型中的上一个月_Sql Server_Ssrs 2012 - Fatal编程技术网

Sql server 获取列位于YYYYMM数字数据类型中的上一个月

Sql server 获取列位于YYYYMM数字数据类型中的上一个月,sql-server,ssrs-2012,Sql Server,Ssrs 2012,在SQL Server中,如何获取列为YYYYMM数字数据类型(如202101)的前一个月 每次我都需要上个月的默认值请,请,请,使用日期,而不是无法验证的整数,需要一些技巧和技巧才能使日期看起来像日期 DECLARE @t table ( i int IDENTITY(1,1), col int); INSERT @t(col) VALUES(202001),(202102); SELECT DATEADD(MONTH, -1, DATEFROMPARTS(col/100, col%100

在SQL Server中,如何获取列为YYYYMM数字数据类型(如202101)的前一个月


每次我都需要上个月的默认值

请,请,请,使用日期,而不是无法验证的整数,需要一些技巧和技巧才能使日期看起来像日期

DECLARE @t table ( i int IDENTITY(1,1), col int);

INSERT @t(col) VALUES(202001),(202102);

SELECT DATEADD(MONTH, -1, DATEFROMPARTS(col/100, col%100, 1)) FROM @t;

请告诉我们您尝试了什么。为什么要将日期存储为整数?这是一个非常糟糕的做法。以前有什么价值?当前日期?表中存在的某个随机行?变量?“我需要默认设置”听起来也像某种类型的接口要求(例如,报告参数)。它也可能是列或存储过程的默认约束。