6

SQL Server 2008 でクエリを実行する際に問題が発生しました。インターネットを検索しましたが、何も見つからなかったか、その方法についてのアイデアが得られませんでした。

Northwind データベースを使用して、テーブル OrderDetails に対してクエリを実行し、OrderID と UnitPrice を選択して、次のように表示する必要があります。

OrderID   -    UnitPrice
------------------------
10248     -     14.00
10248     -     9.80
10248     -     34.80
10249     -     18.60

結果は次のようになります。

OrderID   -    UnitPrice
------------------------
10248     -     14.00
10248     -     23.80
10248     -     58.6
10249     -     18.60
4

2 に答える 2

5

チェックしてください:

;with T as(
    select 
        *, 
        ROW_NUMBER() over (partition by OrderID order by OrderID) RNum
    from YourTable
)
select 
    *, 
    (select sum(UnitPrice) from T b where b.OrderID=a.OrderID and b.RNum<=a.RNum) CumTotal
From T a

SQL フィドルで試す

于 2013-05-14T05:04:42.543 に答える