У меня есть следующая хранимая процедура. Он суммирует записи за определенный год (2013) по конкретному TIN. У TINS есть имя налогоплательщика, идентифицированное с TIN вместе с результатами. Столбцы отображаются как TIN, TaxpayerName, Total.SQL, объединяющий несколько результатов в одну таблицу с суммами
Это бухгалтерское приложение.
Что я хотел бы сделать, это добавить четвертый столбец, который покажет сумму другого года, поэтому их можно сравнить с более поздними. Год будет всегда в предыдущий год (2012 год в этом примере).
В течение предыдущего года могут быть или не быть, поэтому я должен дать ему 0 или null за предыдущий год. Я изо всех сил пытаюсь понять, как их объединить. Каким-то образом мне придется сопоставить каждый TIN и получить сумму предыдущего года, если она существует. Часть этого запроса будет выглядеть примерно так: Trans.Main_AbstractNumber = 136 и SUBSTRING (Trans.Main_TaxPeriod, 1,4) = '2012', используя SUM (Main_AbstractAmount) как PreviousTotal или что-то в этом роде.
Кто-нибудь есть идеи, как я должен подойти к этому? Спасибо
Select Trans.Main_TIN, C.TaxpayerName, SUM(Main_AbstractAmount) as Total
from qetl.RECORDS Trans join qetl.TAXPAYERS C on Trans.Main_TIN=C.TIN
where Trans.Main_AbstractNumber =136 and SUBSTRING(Trans.Main_TaxPeriod,1,4) = '2013'
GROUP BY Trans.Main_TIN,C.TaxpayerName