演算子 | 説明 |
---|---|
= | 左辺と右辺が一致するとTrue |
!= | 左辺と右辺が一致しないとTrue |
<> | 左辺と右辺が一致しないとTrue (!= と一緒) |
> | 左辺が右辺よりも大きいとTrue |
< | 左辺が右辺よりも小さいとTrue |
>= | 左辺が右辺以上ならばTrue |
<= | 左辺が右辺以下ならばTrue |
IN | 左辺が右辺のリストに含まれていればTrue |
NOT IN | 左辺が右辺のリストに含まれていなければTrue |
BETWEEN x AND y | 左辺がxからyの範囲であればTrue |
NOT BETWEEN x AND y | 左辺がxからyの範囲でなければTrue |
LIKE | 左辺が右辺に部分一致すればTrue |
NOT LIKE | 左辺が右辺に部分一致しなければTrue |
IS NULL | 左辺がNULLであればTrue |
IS NOT NULL | 左辺がNULLでなければTrue |
IN以降の演算子はSQLのWHERE句で使われているものですが、IF文の条件式などでも使用できるんですね。
WHERE句で書いているので馴染みはありますが、条件式を書いているときに、
パッとは思い出せないというか、思いつかないというか、パッとは出てこないです。
慣れですかね・・・
DECLARE value NUMBER := 5; strValue VARCHAR2(10) := 'ABC'; BEGIN --IN演算子 --出力:リストに含まれる IF ( value IN ( 1, 3, 5, 7, 9) ) THEN SYS.DBMS_OUTPUT.PUT_LINE('リストに含まれる'); ELSE SYS.DBMS_OUTPUT.PUT_LINE('リストに含まれない'); END IF; --BETWEEN演算子 --出力:1~9の範囲である IF ( value BETWEEN 1 AND 9 ) THEN SYS.DBMS_OUTPUT.PUT_LINE('1~9の範囲である'); ELSE SYS.DBMS_OUTPUT.PUT_LINE('1~9の範囲でない'); END IF; --LIKE演算子 --出力:BCに後方一致する。 IF ( strValue LIKE '%BC' ) THEN SYS.DBMS_OUTPUT.PUT_LINE('BCに後方一致する。'); ELSE SYS.DBMS_OUTPUT.PUT_LINE('BCに後方一致しない'); END IF; --IS NULL演算子 --出力:NULLである strValue := null; IF ( strValue IS NULL) THEN SYS.DBMS_OUTPUT.PUT_LINE('NULLである。'); ELSE SYS.DBMS_OUTPUT.PUT_LINE('NULLでない'); END IF; END;
0 件のコメント:
コメントを投稿