ヘッダーをスキップ
Oracle Fusion Middleware Oracle Business Activity Monitoringユーザーズ・ガイド
11g リリース1 (11.1.1)
B61382-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

A 計算演算子と計算式

この付録では、計算フィールドをデータ・オブジェクトまたはレポート・ビューに作成するときに計算に使用可能な演算子と式の構文と例を示します。

この項の内容は次のとおりです。

計算演算子

表A-1 計算フィールドで使用される演算子

演算子 機能

+(プラス記号)

加算

-(マイナス記号)

減算

*(アスタリスク)

乗算

/(スラッシュ)

除算

+(パーセント記号)

()(カッコ)

演算順序を決定するカッコ

&&(二重アンパサンド)

論理積(AND)

! (感嘆符)

論理否定(NOT)

||(二重パイプ)

論理和(OR)

==(二重等号)

等式


特殊文字(表A-1にリストした演算子や二重引用符、空白など)を含んだフィールド名は、中カッコ{}で囲む必要があります。 数字、英字またはアンダースコアのみが含まれ、1文字目が英字またはアンダースコアで始まるフィールド名は、中カッコで囲む必要はありません。 たとえば、フィールド名がSalesの場合、この名前を計算に正しく入力するにはSalesと入力します。 一方、フィールド名がSales+Costsの場合、この名前を計算に正しく入力するには{Sales+Costs}と入力します。

二重引用符を他の二重引用符内で使用する場合は、二重引用符を追加してエスケープします。 たとえば、Length("""Hello World, "" I said")と入力します。

Avg

指定したフィールドのすべての値の平均が戻されます。 Avgには、IntegerFloatまたはDecimal型のフィールド・パラメータを1つ指定できます。

構文:

Avg(Number)

例:

Avg(Revenue)

Ceiling

指定した値以上で最も小さい整数が戻されます。 Ceiling(2.9)では3が戻され、Ceiling(-2.3)では-2が戻されます。 Ceilingには、IntegerFloatまたはDecimal型のフィールド・パラメータを1つ指定するか、あるいは数値を入力できます。

構文:

Ceiling(Number)

例:

Ceiling(Total)
Ceiling(3.7)

Concat

複数の文字列が1つに結合されます。 Concatには、String型のフィールド・パラメータを複数指定するか、あるいは文字列値を入力できます。

構文:

Concat(String1,String2, ... ,StringN)

この例では、HTMLの文字列に対してConcatとIf(「If」を参照)を使用し、計算されたHTMLフィールドにイメージをロードしています(詳細は「計算でのHTMLの使用」を参照)。

If ({Excess Capacity} > 16) 
    Then (Concat ("<img src='../Images/round_green16px.gif' alt='",
         {Excess Capacity},"' />"))
    Else (If ({Excess Capacity} < 1) Then 
         (Concat("<img src='../Images/round_red16px.gif' alt='",
         {Excess Capacity},"' />"))
    Else (Concat("<img src='../Images/round_amber16px.gif' alt='",
         {Excess Capacity},"' />")))

Count

NULL以外のすべての値の数が戻されます。 Countには、任意の型のフィールド・パラメータを1つ指定できます。

構文:

Count(Field)

例:

Count(SaleComplete)

CountDistinct

同じフィールド内の異なる値の数が戻されます。 CountDistinctには、任意の型のフィールド・パラメータを1つ指定できます。

構文:

CountDistinct(Field)

例:

CountDistinct(Salesperson)

DateAdd

フィールド値に補正値が加算されます。 DateAddの最初のパラメータは、DateTime型のフィールドである必要があります。最後の7つのパラメータは、Integer型のフィールドまたは整数値にできます。 補正値が不要な場合は、0(ゼロ)を指定できます。

構文:

DateAdd(DateTime, Years, Months, Days, Hours, Minutes, Seconds, Milliseconds)

例:

DateAdd({Last Modified}, 0, 0, 7, 0, 0, 0, 0)
//adds 7 days to the Last Modified value

DateAdd({Last Modified}, 0, 0, DaysToFollowup, 0, 0, 0, 0)
//adds DaysToFolowup number of days to the Last Modified value

DayName

ある日付の曜日が戻されます。 DayNameには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

DayName(DateTime)

例:

DayName({Last Modified})

DayOfMonth

ある日付のその月の日が1から31の範囲で戻されます。DayOfMonthには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

DayOfMonth(DateTime)

例:

DayOfMonth({Last Modified})

DayOfWeek

ある日付の曜日が1から7の範囲で戻されます。DayOfWeekには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

DayOfWeek(DateTime)

例:

DayOfWeek({Last Modified})

DayOfYear

ある日付のその年の日が1から366の範囲で戻されます。DayOfYearには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

DayOfYear(DateTime)

例:

DayOfYear({Last Modified})

Floor

指定したフィールドの値以下で最も大きな整数が戻されます。 Floor(2.9)では2が戻され、Floor(-2.3)では-3が戻されます。 Floorには、IntegerFloatまたはDecimal型のフィールド・パラメータを1つ指定するか、あるいは数値を入力できます。

構文:

Floor(Number)

例:

Floor(Sales)
Floor(46.75)

Hour

時間の値が0から23の範囲で戻されます。Hourには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

Hour(DateTime)

例:

Hour({Last Modified})

If

If-Then-Else文が作成されます。 Ifのパラメータには、任意の型のフィールド、式および値を指定できます。

構文:

If(x)
  Then(y)
  Else(z)

例:

If(Sum(Quantity) > Max(Total))
  Then(1)
  Else(2)

IfNull

テスト値xがNULLの場合、指定値yが戻されます。 IfNullには、2つのパラメータを指定できます。指定できるのは、任意の型のフィールドまたは値です。 ただし、2つのパラメータのデータ型は同じである必要があります。

構文:

IfNull(x,y)

例:

IfNull(Quantity, 0)

Length

文字列の長さが戻されます。 Lengthには、パラメータを1つ指定できます。指定できるのは、String型のフィールド、引用符で囲んだ文字列値、文字列が含まれている式またはString型のフィールドが含まれている式です。

構文:

Length(String)

例:

Length(Description)
Length("string")
Length(Concat(Description,"Description"))

Lower

文字列が小文字に変換されます。 Lowerには、パラメータを1つ指定できます。指定できるのは、String型のフィールド、引用符で囲んだ文字列値、文字列が含まれている式またはString型のフィールドが含まれている式です。

構文:

Lower(String)

例:

Lower(Description)
Lower("Description")
Lower(Concat(Description,"Description"))

Max

指定したフィールドまたは式の最大値が戻されます。 Maxには、任意の型の1つのフィールド・パラメータまたは別の有効な式を指定できます。

構文:

Max(x)

例:

Max(Quantity)
Max(Concat(Description," overstock"))

Min

指定したフィールドまたは式の最小値が戻されます。 Minには、任意の型の1つのフィールド・パラメータまたは別の有効な式を指定できます。

構文:

Min(x)

例:

Min(Quantity)
Min(Concat(Description," overstock"))

Minute

分の値が0から59の範囲で戻されます。Minuteには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

Minute(DateTime)

例:

Minute({Last Modified})

Month

ある日付の月の値が1から12の範囲で戻されます。Monthには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

Month(DateTime)

例:

Month({Last Modified})

MonthName

ある日付の月の名前が戻されます。 MonthNameには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

MonthName(DateTime)

例:

MonthName({Last Modified})

Now

現在の日付と時刻が戻されます。 Nowには、パラメータを指定できません。

構文:

Now()

例:

DateAdd(Now(), 0, 0, 7, 0, 0, 0, 0)

PercentOfTotal

指定したフィールドの合計値に対する値の割合が戻されます。 PercentOfTotalには、IntegerFloatまたはDecimal型のフィールド・パラメータを1つ指定できます。

構文:

PercentOfTotal(Number)

例:

PercentOfTotal(Quantity)

Power

ある値xをもう1つの値yで累乗した値が戻されます。Powerには、パラメータを2つ指定できます。指定できるのは、IntegerFloatDecimal型のフィールドまたは数値です。

構文:

Power(Number,Number)

例:

Power(Quantity, 2)

Quarter

四半期の値が1から4の範囲で戻されます。Quarterには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

Quarter(DateTime)

例:

Quarter({Last Modified})

Repeat

文字列が指定した回数繰り返されます。 Repeatには、パラメータを2つ指定できます。最初のパラメータには文字列値またはString型のフィールド、2番目のパラメータには整数値またはInteger型のフィールドを指定できます。 いずれのパラメータにも、最初のパラメータに文字列が戻され、2番目のパラメータに整数が戻される式を使用できます。

構文:

Repeat(String,Integer)

例:

Repeat("string", 5)
Repeat(Description, 2)
Repeat(Description, Quantity)
Repeat(Concat(Description," overstock"),Quantity+2)

Replace

すべての文字列yが文字列zに置換されて、文字列xが戻されます。Replaceには、String型のフィールド・パラメータまたは文字列値を3つ指定できます。

構文:

Replace(String,String,String)

例:

Replace(Description, "ing", "tion")

Round

最初のパラメータで指定した値が、2番目のパラメータで指定した小数点以下の桁数で四捨五入されます(小数点以下N+1位の数が5以上の場合は切り上げられ、そうでない場合は切り捨てられます)。 Roundには、パラメータを2つ指定できます。指定できるのは、IntegerFloatDecimal型のフィールドまたは数値です。

構文:

Round(Number,N)

例:

Round(Sales,2)

この例では、Sales値が12.345の場合、12.35に四捨五入されます。

Second

秒の値が0から59の範囲で戻されます。Secondには、DateTime型のフィールド・パラメータを1つ指定できます。

構文:

Second(DateTime)

例:

Second({Last Modified})

Substring

文字列xの位置yからzの文字数の部分文字列が戻されます。Substringには、3つのパラメータが必要です。最初のパラメータには文字列値またはString型のフィールド、2番目および3番目のパラメータには整数値またはInteger型のフィールドを指定する必要があります。

構文:

Substring("source_string", start_position, substring_length)

例:

Substring("some string", 6, 3)
// returns "str"

Sum

指定したフィールドのすべての値の合計が戻されます。 Sumには、IntegerFloatまたはDecimal型のフィールド・パラメータを1つ指定できます。

構文:

Sum(Number)

例:

Sum(Total)

Switch

Switch文が作成されます。 Switchのパラメータには、任意の型のフィールド、式および値を指定できます。

構文:

Switch(w)
  Case(x):(y)
  Default(z)

例:

TrimEnd

文字列の末尾にある空白文字(空白、タブ、改行、ライン・フィード、ページ・フィード、フォーム・フィードなど)を削除します。 TrimEndには、String型のフィールド・パラメータを1つ指定できます。文字列値を戻す式を入力することもできます。

構文:

TrimEnd(String)

例:

TrimEnd(Description)
TrimEnd(Concat(Description,Subcategory))

TrimStart

文字列の先頭にある空白文字(空白、タブ、改行、ライン・フィード、ページ・フィード、フォーム・フィードなど)を削除します。 TrimStartには、String型のフィールド・パラメータを1つ指定できます。文字列値を戻す式を入力することもできます。

構文:

TrimStart(String)

例:

TrimStart(Description)
TrimStart(Concat(Description,Subcategory))

Upper

文字列が大文字に変換されます。 Upperには、String型のパラメータを1つ指定できます。文字列値を戻す式を入力することもできます。

構文:

Upper(String)

例:

Upper({License Plate Number})

Week

DateTime値の週が0から53の範囲で戻されます。これは、53週目に週の開始日が存在する可能性があるためです。日曜日が、その週の開始日になります。 日曜日があるこの年の最初の週が、1週目となります。

たとえば、2006年1月1日は日曜日であるため、0週目は存在しません。この年は、1週目から開始し、53週目まで続きます。2006年の53週目には、1日のみが含まれます。それは12月31日で、日曜日でもあります。 これに続く月曜日から土曜日(2007年1月1日から6日)は、2007年の0週目です。

構文:

Week(DateTime)

例:

Week({Last Modified})

Year

年の値が1000から9999の範囲で戻されます。Yearには、DateTime型のパラメータを1つ指定できます。

構文:

Year(DateTime)

例:

Year({Last Modified})