2016-12-06 2 views
1

enter image description hereдоступа запроса вычесть 2 другой столбец из другой строки в одной таблице с таким же ID

У меня есть таблица deposit которые имеют столбец Refund_amt, Deposit_amt, имеющие разные строки с таким же GR_no. вот мой вопрос, я хочу, чтобы вычесть deposit_amt столбец из Refund_amt Я попробовал различные альтернативы в запросе, но не удалось

Мой запрос:

SELECT d.Gr_no 
    , d.Rec_No 
    , d.Deposite_Amt 
    , d.penalty_Amt 
    , d.Refund_Amt - Refund 
    , s.Name 
    , s.cur_std 
    , cur_div 
    From 
    (select d.Refund_Amt refund 
     from deposite d 
      , std_gr s 
     where d.Gr_no = s.Gr_no ) 

Результат будет выглядеть в final total колонке :

enter image description here

Спасибо

+2

вы можете Pls дают желаемый результат –

ответ

1

Вы ищете агрегацию за std_gr: сумму вкладов за вычетом суммы возмещений. Один из способов - выполнить эту агрегацию в подзапросе и присоединить этот подзапрос к вашей таблице.

select 
    d.*, sums.final_total 
from deposite d 
join 
(
    select std_gr, nz(sum(deposite_amt),0) - nz(sum(refund_amt),0) as final_total 
    from deposite 
    group by std_gr 
) as sums on sums.std_gr = d.std_gr 
order by d.rec_no; 
+0

Спасибо .yeah я точно хочу этим только – Mamta

Смежные вопросы