管理 Oracle CRM On Demand > Expression Builder > Expression Builder 運算子
Expression Builder 運算子
這個主題將描述您可以用於Expression Builder中的運算子,以及這些運算子的評估順序。
備註:在此主題的範例運算式中所使用的欄位名稱及欄位名稱語法與語言無關,是在 Expression Builder 第 29 版 Service Pack 1 較早的版次中使用的欄位名稱與欄位名稱語法。這些範例仍然有效。然而,若您從 Expression Builder 第 29 版 Service Pack 1 或更新版本的欄位清單中選取運算式的對應欄位,則欄位名稱與欄位名稱語法將會與範例中所顯示的不同。建議您一律從 Expression Builder 的欄位清單中選取運算式的欄位,以讓欄位名稱與欄位名稱語法隨時保持正確。如需有關運算式中欄位名稱與欄位名稱語法的詳細資訊,請參閱關於運算式。
算數運算子
下表將描述每個算數運算子的目的,並且提供使用方式的範例。
運算子
|
目的
|
範例
|
+
|
新增
|
[<Record Number>] + 1
|
-
|
減
|
[<Record Number>] - 1
|
-
|
負號
|
[<Revenue>] < -100
|
*
|
乘
|
[<Subtotal>] * 0.0625
|
/
|
除
|
[<Total Items>] / [<Total Orders>]
|
^
|
指數
|
[<Grid Height>] ^ 2
|
邏輯運算子
下列真實性表格將顯示Expression Builder中邏輯運算子所產生的可能結果。
邏輯運算子
|
第一個運算元
|
第二個運算元
|
結果
|
NOT
|
TRUE
|
|
FALSE
|
FALSE
|
|
TRUE
|
NULL
|
|
NULL
|
AND
|
TRUE
|
TRUE
|
TRUE
|
FALSE
|
FALSE
|
FALSE
|
TRUE
|
FALSE
|
FALSE
|
FALSE
|
TRUE
|
FALSE
|
TRUE
|
NULL
|
NULL
|
FALSE
|
NULL
|
FALSE
|
NULL
|
TRUE
|
NULL
|
NULL
|
FALSE
|
FALSE
|
NULL
|
NULL
|
NULL
|
OR
|
TRUE
|
TRUE
|
TRUE
|
FALSE
|
FALSE
|
FALSE
|
TRUE
|
FALSE
|
TRUE
|
FALSE
|
TRUE
|
TRUE
|
TRUE
|
NULL
|
TRUE
|
FALSE
|
NULL
|
NULL
|
NULL
|
TRUE
|
TRUE
|
NULL
|
FALSE
|
NULL
|
NULL
|
NULL
|
NULL
|
比較運算子
下表將描述每個比較運算子的目的,並且提供使用方式的範例。
運算子
|
目的
|
範例
|
=
|
測試第一個運算元是否等於第二個運算元。
|
[<Last Name>] = "Smith"
|
< >
|
測試第一個運算元是否不等於第二個運算元。
|
[<Role>] <> "End-User"
|
>
|
測試第一個運算元是否大於第二個運算元。
|
[<Revenue>] > 5000
|
<
|
測試第一個運算元是否小於第二個運算元。
|
[<Probability>] < .7
|
> =
|
測試第一個運算元是否大於或等於第二個運算元。
|
[<Revenue>] >= 5000
|
< =
|
測試第一個運算元是否小於或等於第二個運算元。
|
[<Probability>] <= .7
|
LIKE
|
測試第一個運算元的值是否符合指定的字串。
|
[<Last Name>] LIKE "Smith"
提示:您可以使用星號 (*) 和問號 (?) 模式相符特殊字元搭配 LIKE 運算子。
|
NOT LIKE
|
測試第一個運算元的值是否不符合指定的字串。
|
[<Last Name>] NOT LIKE "Smith"
或
NOT ([<Last Name>] LIKE "Smith")
附註:第二個範例中的括號是必要的。
提示:您可以使用星號 (*) 和問號 (?) 模式相符特殊字元搭配 NOT LIKE 運算子。
|
IS NULL
|
測試運算元是否為 Null。
|
[<Last Name>] IS NULL
|
IS NOT NULL
|
測試運算元是否非 Null。
|
[<Last Name>] IS NOT NULL
|
模式相符特殊字元
下表將描述模式相符特殊字元。這些特殊字元可以搭配 LIKE 和 NOT LIKE 比較運算子使用。
字元
|
目的
|
範例
|
*
|
零或多個字元
|
[<Last Name>] LIKE "Sm*" 會傳回 [<Last Name>] 值以 Sm 字元為開頭的所有記錄,例如 Smith、Smythe 和 Smart。
[<Last Name>] LIKE "*om*" 會傳回 [<Last Name>] 欄位包含 om 字元的所有記錄,例如 Thomas、Thompson 和 Tomlin。
|
?
|
一個字元
|
[<First Name>] NOT LIKE "Da?" 會傳回 [<First Name>] 值為三個字元長而且並未以 Da 字母為開頭的所有記錄。系統會傳回含有 Ted、Tom 和 Sam 的記錄,但不會傳回含有 Dax 和 Dan 的記錄。
NOT ([<First Name>] LIKE "?o?") 會傳回 [<First Name>] 值為三個字元長而且中間字元沒有 o 的所有記錄。系統會傳回含有 Ted 和 Sam 的記錄,但不會傳回含有 Tom 和 Bob 的記錄。
|
串連運算子
在電子郵件中,+ (加號) 運算子是用來串連欄位值與文字。
運算子的優先順序
優先順序是指 Oracle CRM On Demand 在單一運算式內部評估各種運算子的順序。適用規則如下:
- 優先順序較高的運算子會在優先順序較低的運算子之前評估。
- 優先順序相等的運算子會由左至右評估。
- 等級數字越低表示優先順序越高。
- 括號的使用方式會影響運算式內部的優先順序。括號內的運算式會在括號外的運算式之前評估。
下表將列出優先順序的等級。
等級
|
運算子
|
1
|
( )
|
2
|
- (負數)
|
3
|
^ (指數)
|
4
|
* (乘法)、/ (除法)
|
5
|
+ (加法)、- (減法)、NOT 邏輯運算子
|
6
|
AND 邏輯運算子
|
7
|
OR 邏輯運算子
|
8
|
=、<>、>、<、>=、<= 比較運算子
|
相關主題
如需Expression Builder的相關資訊,請參閱下列主題:
|