0
这是我第一次使用LAG功能。我理解它是如何在一个简单的例子上工作的,但我需要加入到其他两个表中以获得我期待的结果。最终结果将是1行,其中prevamount字段包含会计期间的pdr.depr值10加入具有延迟功能/无效标识符的另一个表格
当我尝试运行此SQL时,出现错误(CF_SEQNO字段上的无效标识符)。任何帮助我做错了将不胜感激。谢谢您的帮助。
select
pdr.BUSINESS_UNIT,
pdr.DEPTID,
pdr.ASSET_ID,
pdr.DEPR,
pa.DESCR,
pdr.ACCOUNT_AD,
pdl.ACCOUNT,
pdl.JOURNAL_ID,
pdl.JOURNAL_DATE,
pdr.FISCAL_YEAR,
pdr.accounting_period
FROM (select lag(pdr.depr) over (
partition by pdr.deptid
order by pdr.fiscal_year, pdr.accounting_period) as prevamount,
pdr.BUSINESS_UNIT,
pdr.DEPTID,
pdr.ASSET_ID,
pdr.DEPR as curramt,
pdr.ACCOUNT_AD,
pdr.FISCAL_YEAR,
pdr.accounting_period
from ps_depr_rpt pdr)
INNER JOIN PS_DIST_LN pdl
ON pdl.BOOK = pdr.BOOK
AND pdl.BUSINESS_UNIT = pdr.BUSINESS_UNIT
--AND pdl.FISCAL_YEAR = pdr.FISCAL_YEAR
--AND pdl.ACCOUNTING_PERIOD = pdr.ACCOUNTING_PERIOD
AND pdl.ASSET_ID = pdr.ASSET_ID
AND pdl.CF_SEQNO = pdr.CF_SEQNO
INNER JOIN PS_ASSET pa
ON pa.ASSET_ID = pdl.ASSET_ID
AND pa.BUSINESS_UNIT = pdl.BUSINESS_UNIT
WHERE
pdr.business_unit = 'A0465'
AND pdr.BOOK = 'PERFORM'
AND pdr.fiscal_year = 2014
AND pdr.accounting_period = 11
AND pdl.DISTRIBUTION_TYPE = 'DE'
感谢您的帮助 – Shaves 2014-08-28 13:29:07