Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Суммирование значений столбцов таблицы по выделяющим атрибутам с группировкой  [new]
YerlanY
Member

Откуда:
Сообщений: 1
Доброго времени суток!
Ребята, помогите пожалуйста с алгоритмом pl sql.
Мой текущий запрос возвращает следующие данные:Картинка с другого сайта.
С этого результата необходимо получить следующее: Картинка с другого сайта.

В mysql2.JPG
"Сумма загрузки" - это сумма всех "AMOUNT" при соответствующих ATMNUMB, INCTIME и TRANCODE = IncreaseCass
"Сумма разгрузки" - это сумма всех "AMOUNT" при соответствующих ATMNUMB, INCTIME и TRANCODE = DecreaseCass плюс, где заведено (в зависимости от модели) CashinDec

Как видите, результат, это всего одна запись по устройству с его загруженными и разгруженными суммами с учетом валюты счета (KZT/USD). Но не во всех устройствах так, есть только такие, где только KZT валюта.

Вообщем, из Картинка с другого сайта. получить Картинка с другого сайта..

PS мой скрипт, как я получил Картинка с другого сайта.:
select distinct tl.id, tl.packno, tl.termname as atmnumb, ta.account as atmacc, 
to_char (tl.time, 'dd.mm.yyyy') as incdate, to_char (tl.time, 'hh24:mi.ss')  as inctime, 
tl.amount, DECODE(tl.currency, 840, 'USD', 398, 'KZT') as valuta, 
DECODE (tl.trancode, 96, 'DecreaseCass', 97, 'IncreaseCass', 98, 'CashinDec') as TRANCODE from tla tl
inner join baobab.ter_account ta onat tl.origid = ta.id and ta.currency = tl.currency
where trunc(tl.time) = trunc(sysdate-1)
and tl.type = 999 and tl.origtype = 1 and tl.trancode in (96, 97, 98) 
and tl.packno between
           to_number(to_char(trunc(sysdate-1) - 1, 'YY') || to_char(trunc(sysdate-1) - 1, 'MM') || 
                     to_char(trunc(sysdate-1) - 1, 'DD') || '001') and
           to_number(to_char(trunc(sysdate-1) + 1, 'YY') || to_char(trunc(sysdate-1) + 1, 'MM') ||
                     to_char(trunc(sysdate-1) + 1, 'DD') || '005')
                     order by tl.termname asc


Также забыл сказать, код запускается из специального API, который поддерживает команды pl sql, но невозможно какие-то значение записывать во временную таблицу либо вьюшку.

Заранее благодарю за дельные советы :)

Сообщение было отредактировано: 6 июн 21, 21:56
6 июн 21, 21:58    [22332014]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить