2016-02-27 18 views

回答

0

你需要從1個號碼記錄到N(其中N是最後一個),
再總結前10,並根據這些數字的其餘部分。

做到這一點,最簡單的方法是使用wor_number解析函數,請參閱文檔的詳細信息:https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions137.htm

您的查詢migh樣子:

SELECT SUM(column_to_sum) sum_of_all, 
     SUM(CASE WHEN nbr BETWEEN 1 AND 10 THEN column_to_sum END) as top_10, 
     SUM(column_to_sum) 
     - 
     SUM(CASE WHEN nbr BETWEEN 1 AND 10 THEN column_to_sum END) difference 
FROM (
    SELECT column_to_sum, 
      row_number() OVER 
       (ORDER BY expression_to_order_rows_from_top_to_bottom) nbr 
    FROM table 
) 
+0

我已經解決了,沒問題! – user92322