Расчет биржевой системы через SQL - PullRequest
1 голос
/ 17 октября 2008

Необходимо рассчитать портфель фондового рынка на основе сделок в базе данных. Я рассчитываю выполнить с помощью SQL среднюю цену, норму прибыли, стоимость портфеля и т. Д.

Пример данных:

Stock   Shares  Price   Value
A       100     50      5000
A       -20     60     -1200
A        50     40      2000

Я не смог сделать это с помощью SQL, поэтому, возможно, мне понадобится написать сценарий для вывода, поэтому любая помощь там приветствуется.

1 Ответ

2 голосов
/ 17 октября 2008

Обратите внимание, что текущая цена жестко закодирована (38), поскольку она не указана, ее необходимо будет указать в другой таблице, которая будет присоединена к таблице запасов, но принцип тот же.

create table stocks (stock varchar2(10),shares number, price number);
insert into stocks values('A', 100, 50);
insert into stocks values('A', -20, 60);
insert into stocks values('A', 50, 40);

select stock, sum(shares) number_of_shares, round(sum(shares*price)/sum(shares),2) average_price,
    sum(shares*price) amount_paid,   sum(shares*38) value,   
    round((sum(shares*38)-sum(shares*price))/sum(shares*price)*100,2)||'%' rate_of_return
from stocks
group by stock

STOCK NUMBER_OF_SHARES AVERAGE_PRICE AMOUNT_PAID VALUE RETURN                    
A                  130         44.62        5800  4940 -14.83%
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...