1

SQL Server 2000 の各レコードに基づく計算フィールドが必要です。たとえば、次のようなテーブルがあります。

col1 col2 calcfield
-------------------
1     2   col1+col2
3     5   col1*col2

レコードごとに最後のフィールドを計算するクエリが必要です。

1     2     3
3     5     15

実際にはこれはある人の数を計算するシステムです。テーブルのフィールドにいくつかのパラメーターが格納されており、それらのパラメーターから数を計算する方法 (つまり数式) を格納する別のフィールドがあります。人ごとに異なるパラメーターと異なる式があります。パラメータと計算列をテーブルから直接抽出できるクエリを設計したい

これを行う方法はありますか? 最善かつ最速の方法があれば....

よろしくお願いします

4

1 に答える 1

3

計算してエイリアスを付けるだけです。例:

SELECT 
  field1,
  field2,
  field1 + field2 AS 'CalcField'
FROM table

レコードに応じて異なる計算を行う必要がある場合は、CASE ステートメントを使用します。

SELECT 
  field1,
  field2,
  CASE 
    WHEN (some condition) THEN field1 + field2 
    WHEN (some other condition) THEN field1 * field2
    ELSE (some default value or calculation)
    END AS 'CalcField'
FROM table
于 2012-08-19T16:19:44.457 に答える