0

私はこのクエリを持っています:

select @cost = @cost +                  
    (select top 1 price from
    (select top 2 price, date  from myTable order by date DESC)
     order by date ASC
)

そして、エラーが発生します:キーワード「order」の近くの構文が正しくありません。これを修正する方法は?

4

1 に答える 1

3

このサブクエリだと思います

(select top 2 price, date  from myTable order by date DESC)

このようなエイリアスが必要です

(select top 2 price, date  from myTable order by date DESC) sq

しかし、私はそれを次のように書きます:

SELECT @cost = @cost + (
SELECT price FROM (
SELECT price, date, ROW_NUMBER() OVER (ORDER BY date DESC) AS rownum
) sq WHERE rownum = 2
)
于 2012-12-14T09:20:12.393 に答える