【问题标题】:Stock Trading System Calculations via SQL通过 SQL 进行股票交易系统计算
【发布时间】:2010-09-17 16:38:22
【问题描述】:

需要根据数据库中的交易计算股票市场投资组合。我希望通过 SQL 进行的计算是平均价格、回报率、投资组合价值等。

样本数据:

股票 股价 价值 100 50 5000 一个 -20 60 -1200 50 40 2000

我无法使用 SQL 来完成,所以我想我可能需要编写输出脚本,因此感谢您提供任何帮助。

【问题讨论】:

  • 您需要告诉我们您的平台。 Oracle 有非标准子句,使 EXCEL 之类的功能变得微不足道。

标签: sql database-design


【解决方案1】:

请注意,当前价格是硬编码的 (38),因为它没有提供,它需要在另一个表中提供,该表将连接到 stock 表,但原理是相同的。

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%

【讨论】:

    猜你喜欢
    • 2021-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多