Oracleで合計を使用した乗算

Oracleの "Sum"機能を使用すると、指定した列からすべてのデータを合計して、結果をクエリ結果に表示できます。 関数sumと一緒にmultiple機能を使用すると、関数sumからの結果を乗算できます。 この機能は、いくつかの数学的結果をユーザーに返す必要がある複雑な照会で使用します。

目的

sum関数の目的は、Oracleデータベースエンジンを使用して複数行のデータを素早く集計することです。 sum関数は高速なので、ループ構造に手動で値を追加しないでください。データベースサーバの動作が遅くなります。 sum関数と乗算機能を一緒に使用すると、2つの値に対して2つのクエリを作成しなくても、2つの値、sumと乗算積を取得できます。

合計機能

sum関数はあなたの "select"クエリで使われています。 合計したい列をsum関数に指定しなければなりません。 次のコードは、すべての顧客注文を合計して結果を表示します。

customerid = 22の注文からの合計としてsum(order_total)を選択します。

上記の照会の結果は、顧客ID 22の合計金額を示しています。

かける

sum関数を書いた後は、指定した数で乗算するか、乗算式に別の列を使用することができます。 たとえば、次のコードでは、合計に顧客が作成した注文数を掛けます。

customerid = 22の注文から、合計、sub(order_total)* count(orderid)としてsum(order_total)を選択します。

上記のクエリは両方の結果を示していますが、2つの方程式を1つに結合して、結果に1つの値を生成することができます。

検討事項

個々のレコードを増やす必要がある場合は、各レコードに対してクエリを作成する必要があります。 Oracleにカーソルを作成して多数のレコードをループ処理し、各結果を変数に記録することもできます。 Oracleではカーソルは低速ですが、複数のレコードの結果を個別に返すための選択肢が1つしかない場合に使用されます。