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