SQL有人可以在我的查询中找到错误吗?

时间:2019-05-22 20:49:54

标签: sql oracle

我的教授告诉我,对于必须创建的查询,我的输出不正确。谁能指出原因?也许他想以不同的方式完成查询?我认为这个问题很简单。 ERD,问题,查询和输出如下。任何帮助表示赞赏。谢谢

  
      
  • 编写一个查询,显示所有在二级市场上交易超过50000股的交易。请输入商品编号,股票代码,所交易公司的名称,证券交易所代码,交易数量,总价格和货币符号。
  •   

输出:

88  TM  Toyota Motors   NYSE    50300   4099128.08  $
28  TM  Toyota Motors   NYSE    50300   4099128.08  $
88  TYO:6201    Toyota Motors   NYSE    50300   4099128.08  $
28  TYO:6201    Toyota Motors   NYSE    50300   4099128.08  $
71  NYT The New York Times  NYSE    84000   1046892 $
11  NYT The New York Times  NYSE    84000   1046892 $
78  BA  British Airways LSE 72000   14711256    £
18  BA  British Airways LSE 72000   14711256    £


SELECT 
trade.trade_id,
stock_listing.stock_symbol,
company.name company_name,
stock_exchange.symbol AS stock_exchange_symbol,
trade.shares AS number_of_shares_traded,
trade.price_total,
currency.symbol currency_symbol
FROM trade 
JOIN stock_listing 
ON stock_listing.stock_id = trade.stock_id
JOIN company 
ON company.stock_id = trade.stock_id
JOIN stock_exchange 
ON stock_exchange.stock_ex_id = trade.stock_ex_id
JOIN currency
ON currency.currency_id = company.currency_id
WHERE trade.shares > 50000;

enter image description here

1 个答案:

答案 0 :(得分:0)

我注意到您在多个记录上具有相同的交易ID。即,看起来多个记录可以被视为“交易”。如果是这种情况,请先按商品ID 进行分组,然后找到数量> 50,000。