1

次のような情報を含むテーブルがあります

activity     cost    order   date  other information
10            1       100     --
20            2       100
10            1       100
30            4       100
40            4       100
20            2       100
40            4       100
20            2       100
10            1       101
10            1       101
20            1       101

私の要件は、作業指示書のすべての活動の合計を取得することです。例: 注文 100 の場合

1+2+4+4=11

1 (アクティビティ 10 の場合) 2 (アクティビティ 20 の場合) 4 (アクティビティ 30 の場合) など

group by で試してみましたが、計算に時間がかかります。倉庫には 1lakh プラスのレコードがあります。効率的な方法で可能性はありますか。

SELECT SUM(MIN(cost))
FROM COST_WAREHOUSE a
WHERE   order = 100
GROUP BY (order, ACTIVITY)
4

1 に答える 1

2

次のクエリを使用して、(アクティビティ、注文、コスト) の個別のタプルのコストの合計を取得できます。

SELECT SUM(COST)
FROM
    (SELECT DISTINCT activity, order, cost 
     FROM COST_WAREHOUSE WHERE order = 100) AS A
于 2012-10-18T04:57:52.097 に答える