1

請求書が2つあるテーブルがあります。行。クラッシュせずにブラウザでそれらすべてを表示することはできないため、上位10行のみが返されますが、テーブルの最初の行は2つの請求書すべての合計である必要があります。行。

私は、すべての行を選択して合計を計算し、同じテーブルで上位10行のみを使用して単語を結合することを考えていました。このようにして、同じクエリを2回実行する必要はありません。

しかし、あなたの経験やアイデアは何ですか。

ありがとう

4

2 に答える 2

1

あなたはこれを試すことができます

select SUM(total) from bill
union
select top (10) * from bill
于 2012-11-15T10:08:40.673 に答える
0

SQLServer2005+

私の例では、行関数 ROW_NUMBER() に番号を付け、行 = 11 の場合は、SUM(total) の合計を OVER() 句に置き換えます

SELECT TOP(11) CASE WHEN (ROW_NUMBER() OVER (ORDER BY (SELECT 1))) = 11 THEN SUM(total) OVER() ELSE total END
FROM dbo.your_table
于 2012-11-15T12:30:50.557 に答える