如何在SQL Server上选择上个月对应的值(我想这是一个简单的查询)
我有下表: 我需要进行查询,返回上个月每个代码的对应值,如下所示: 正如我所说,我认为这是一个简单的查询,但我做不到。只需使用滞后: 在较旧版本的SQL Server中,可以使用“应用”:如何在SQL Server上选择上个月对应的值(我想这是一个简单的查询),sql,sql-server,Sql,Sql Server,我有下表: 我需要进行查询,返回上个月每个代码的对应值,如下所示: 正如我所说,我认为这是一个简单的查询,但我做不到。只需使用滞后: 在较旧版本的SQL Server中,可以使用“应用”: 我不能使用LAG函数,SQL Server的版本太旧了。 select t.*, lag(value) over (partition by code order by date) as value_last_month from t; select t.*, t2.value as value_last_
我不能使用LAG函数,SQL Server的版本太旧了。
select t.*, lag(value) over (partition by code order by date) as value_last_month
from t;
select t.*, t2.value as value_last_month
from t outer apply
(select top (1) t2.*
from t t2
where t2.code = t.code and t2.date < t.date
order by date desc
) t2;