演算子
演算子は、式の他の部分に対して、加算や減算など、どのような演算を実行するかを示します。
演算子には、演算対象のデータ型によって意味が異なるものもあります。例えば、プラス符号 (+) は、整数間の加算を示す場合と、ストリング間の連結を示す場合があります。複合式で、演算子は優先度の高い順に評価されます。
次の表に、各演算子の意味をリストします。演算子は優先度の高い順にリストされます。
演算子 (優先度の高い順) | 意味 | 使用法 | |
---|---|---|---|
小括弧 | ( ) | 式を論理的にグループ化します。 | (<expr>) |
算術演算子 | + - | 単項正および単項負。単項負は数値の符号を変更しますが、単項正は変更しません。 | +<expr>-<expr> |
* / | 乗算および除算。2 つの整数を除算した場合は、整数が返されます (浮動小数点数値が結果の場合、値は整数を生成するように切り捨てられます)。 | <expr>*<expr><expr>/<expr> | |
+ - | 数値の加算および減算。マイナス符号は、2 つの時間を減算して、その差の秒数も算出します。 | <expr>+<expr><expr>-<expr> | |
ストリング連結演算子 | + | ストリングを連結します。 | <expr>+<expr> |
相対演算子 (優先順位はすべて同じ) |
|
|
|
論理演算子 | not | ブール式が false の場合は true に評価され、ブール式が true の場合は false に評価されます。 | not <expr> |
および | 両方の式が true の場合に true に評価されます。 | <expr> and <expr> | |
or | いずれか一方の式が true の場合に true に評価されます。 | <expr> or <expr> | |
like | 式がパターンに一致する場合に true に評価されます。パターンには、検索する文字ストリングを入れます。ワイルドカードを含めることもできます。 | like <expr> | |
is null is not null | NULL 値かどうかをテストします。NULL 値はデータがないことを表します。 | is null is not null |
演算子の使用法
式の中で、通常、オペランドと結果は同じデータ型でなければなりません。また、演算子はデータ型に有効でなければなりません。1 つの式の中で数値データ型 (浮動小数点数値と整数値) を組み合わせることもできます。例えば、次の式は有効です (FloatVal は浮動小数点型の変数です)。
3 * 2.5
FloatVal > 2
混合型の式では、整数は演算が実行される前に浮動小数点数に暗黙的に変換されます。
演算子の優先順位
式の中で、優先順位が同じ演算子は左から右に評価されます。例えば、次の整数式では、除算と乗算は同じ優先順位なので、6 が 4 で除算されてから (除数と被除数が整数なので) 結果が切り捨てられて、2 で乗算されます。
6/4*2 = 2
優先順位が異なる演算子が多く含まれる式では、小括弧を自由に使用すると、式がわかりやすく、管理しやすくなります。例えば、次に同じ式の 2 つのバージョンを示します。2 つ目のバージョンでは小括弧が使用されているので、式の論理が明確になります。
Num + 2 > 80 or Num - 2 < -20
((Num + 2) > 80) or ((Num - 2) < -20)