PL / SQL-演算子
この章では、PL / SQLの演算子について説明します。演算子は、特定の数学的または論理的操作を実行するようにコンパイラーに指示する記号です。PL / SQL言語は組み込み演算子が豊富で、次のタイプの演算子を提供します-
- 算術演算子
- 関係演算子
- 比較演算子
- 論理演算子
- 文字列演算子
ここでは、算術演算子、関係演算子、比較演算子、論理演算子を1つずつ理解します。文字列演算子については、後の章で説明します-PL/SQL - Strings。
算術演算子
次の表に、PL / SQLでサポートされているすべての算術演算子を示します。仮定しましょうvariable A 10を保持し、 variable B 5を保持し、次に−
例を表示
オペレーター | 説明 | 例 |
---|---|---|
+ | 2つのオペランドを追加します | A + Bは15を与えます |
- | 最初のオペランドから2番目のオペランドを減算します | A-Bは5を与えます |
* | 両方のオペランドを乗算します | A * Bは50を与えます |
/ | 分子を分子で割る | A / Bは2を与えます |
**** | べき乗演算子、1つのオペランドを他の累乗に累乗します | A ** Bは100000を与えます |
関係演算子
関係演算子は、2つの式または値を比較し、ブール結果を返します。次の表は、PL / SQLでサポートされているすべての関係演算子を示しています。仮定しましょうvariable A 10を保持し、 variable B 20を保持し、次に−
例を表示
オペレーター | 説明 | 例 |
---|---|---|
= | 2つのオペランドの値が等しいかどうかをチェックし、等しい場合は条件が真になります。 | (A = B)は真ではありません。 |
!= <> 〜= |
2つのオペランドの値が等しいかどうかをチェックし、値が等しくない場合は条件が真になります。 | (A!= B)は真です。 |
>> | 左のオペランドの値が右のオペランドの値より大きいかどうかを確認します。大きい場合は、条件が真になります。 | (A> B)は正しくありません。 |
< | 左のオペランドの値が右のオペランドの値よりも小さいかどうかを確認します。小さい場合は、条件が真になります。 | (A <B)は真です。 |
> = | 左のオペランドの値が右のオペランドの値以上であるかどうかをチェックします。はいの場合、条件は真になります。 | (A> = B)は正しくありません。 |
<= | 左のオペランドの値が右のオペランドの値以下であるかどうかをチェックします。はいの場合、条件は真になります。 | (A <= B)は真です |
比較演算子
比較演算子は、ある式を別の式と比較するために使用されます。結果は常にどちらかですTRUE, FALSE または NULL。
例を表示
オペレーター | 説明 | 例 |
---|---|---|
お気に入り | LIKE演算子は、文字、文字列、またはCLOB値をパターンと比較し、値がパターンと一致する場合はTRUEを返し、一致しない場合はFALSEを返します。 | 「Z%A_i」のような「ZaraAli」がブール値のtrueを返すのに対し、「Z%A_i」のような「NuhaAli」はブール値のfalseを返します。 |
の間に | BETWEEN演算子は、値が指定された範囲内にあるかどうかをテストします。x BETWEEN a AND bは、x> = aおよびx <= bを意味します。 | x = 10の場合、5〜20のxはtrueを返し、5〜10のxはtrueを返しますが、11〜20のxはfalseを返します。 |
に | IN演算子は、セットのメンバーシップをテストします。x IN(セット)は、xがセットの任意のメンバーに等しいことを意味します。 | x = 'm'の場合、x in( 'a'、 'b'、 'c')はブールfalseを返しますが、x in( 'm'、 'n'、 'o')はブールtrueを返します。 |
無効である | IS NULL演算子は、オペランドがNULLの場合はBOOLEAN値TRUEを返し、NULLでない場合はFALSEを返します。NULL値を含む比較では、常にNULLが生成されます。 | x = 'm'の場合、 'x isnull'はブールfalseを返します。 |
論理演算子
次の表に、PL / SQLでサポートされている論理演算子を示します。これらの演算子はすべてブールオペランドで機能し、ブール結果を生成します。仮定しましょうvariable A 当てはまり、 variable B falseを保持し、その後−
例を表示
オペレーター | 説明 | 例 |
---|---|---|
そして | 論理AND演算子と呼ばれます。両方のオペランドが真の場合、条件は真になります。 | (AとB)は誤りです。 |
または | 論理OR演算子と呼ばれます。2つのオペランドのいずれかが真の場合、条件は真になります。 | (AまたはB)は真です。 |
ない | 論理NOT演算子と呼ばれます。オペランドの論理状態を逆にするために使用されます。条件がtrueの場合、LogicalNOT演算子はそれをfalseにします。 | (AとB)は真ではありません。 |
PL / SQL演算子の優先順位
演算子の優先順位は、式内の用語のグループ化を決定します。これは、式の評価方法に影響します。特定の演算子は他の演算子よりも優先されます。たとえば、乗算演算子は加算演算子よりも優先されます。
例えば、 x = 7 + 3 * 2; ここに、x 割り当てられています 13、演算子*は+よりも優先順位が高いため、20ではなく、最初に 3*2 そしてに追加します 7。
ここでは、優先順位が最も高い演算子がテーブルの上部に表示され、優先順位が最も低い演算子が下部に表示されます。式内では、優先順位の高い演算子が最初に評価されます。
演算子の優先順位は次のとおりです:=、<、>、<=、> =、<>、!=、〜=、^ =、IS NULL、LIKE、BETWEEN、IN。
例を表示
オペレーター | 操作 |
---|---|
**** | べき乗 |
+、- | アイデンティティ、否定 |
*、/ | 乗算、除算 |
+、-、|| | 足し算、引き算、連結 |
比較 | |
ない | 論理否定 |
そして | 接続詞 |
または | インクルージョン |