-3

假设我有下表:

Symbol| profit | person 
AAPL    +723     A
AAPL    -100     B
BBY     +123     A
NTAP    +513     A

我想按利润选择前 n 和后 n 符号(忽略是 A 还是 B)。因此,AAPL 应该排在第一位,并且应该显示 623 的利润。

...在 sql 服务器中

现在我正在做类似的事情:

SELECT TOP 15 sym profit FROM x
GROUP BY sym, profit
ORDER BY profit DESC
4

2 回答 2

3

这应该有效:

(
SELECT TOP 15
       Symbol,
       SUM(Profit)
FROM YourTable
GROUP BY Symbol
ORDER BY SUM(Profit)
) UNION (
SELECT TOP 15
       Symbol,
       SUM(Profit)
FROM YourTable
GROUP BY Symbol
ORDER BY SUM(Profit) DESC
)
于 2013-11-06T00:04:42.990 回答
1

使用GROUP BY

SELECT Symbol, SUM(profit) FROM the_table GROUP BY Symbol;

注意:如果需要,添加一个WHERE子句来限制记录。

于 2013-11-05T23:58:32.667 回答