SQL查询集团通过

问题描述:

我有一个表 'OrderBook'SQL查询集团通过

它有场Oid, symbol, price, qty, buysell

我要总结buy/sell价格和Qty组由symbol

+0

@InSane:“'买/ sell'价格”部分仍然不够清晰,因为'price'是场了。 – zerkms 2010-11-11 07:18:04

+0

@zerkms - 是的。我知道。我只能格式化我的理解:-) OP将要澄清那部分 – InSane 2010-11-11 07:19:23

SELECT SUM(buy), 
     SUM(sell), 
     SUM(price), 
     SUM(qty) 
    FROM OrderBook 
GROUP BY symbol 

正如你可以看到 - SQL看起来像自然语言,几乎和你在问题中提出的问题类似;-)

+0

不要忘记数量:P – rwilliams 2010-11-11 07:11:26

+0

@rwilliams aka r-dub:其实我没有得到他的要求,但我的答案应该给至少暗示;-) – zerkms 2010-11-11 07:13:05

SELEC T符号,SUM(买),SUM(卖),SUM(数量)FROM OrderBook GROUP BY符号

使用它这种方式,可能查询可以帮助你达到某种程度的扩展.........在SUM(table_field)里面写 这个字段的名字是你想得到的总和。

我认为这是一个'股票交易订单书';该表可能包含个别订单。 '买入/卖出'栏表示交易是购买还是出售;所需的统计数据可能是“价格*数量”(销售或购买价值)的总和,也可能是数量的总和(总股数),按照符号和买/卖状态分组。我想知道OID是否能够识别订单的日期和时间?

如果这是正确的,那么聚集也许应该是:

SELECT Symbol, BuySell, 
     SUM(Price * Quantity) AS Value, 
     SUM(Quantity) AS Volume 
    FROM OrderBook 
GROUP BY Symbol, BuySell 
ORDER BY Symbol, BuySell;