「Oracle 21c」PL/SQLで論理演算子の論理積(AND)のサンプル

環境
Windows 11 Pro 21H2 64bit
Oracle Database 21c Express Edition Release 21.0.0.0.0
SQL*Plus: Release 21.0.0.0.0

SQL構文

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE OR REPLACE FUNCTION TESTPROC RETURN VARCHAR2
IS
a NUMBER(1) := 5;
b NUMBER(1) := 0;
BEGIN
IF (a = 5) AND (b = 0) THEN
RETURN 'OK result';
ELSE
RETURN 'NG result';
END IF;
END;
/
CREATE OR REPLACE FUNCTION TESTPROC RETURN VARCHAR2 IS a NUMBER(1) := 5; b NUMBER(1) := 0; BEGIN IF (a = 5) AND (b = 0) THEN RETURN 'OK result'; ELSE RETURN 'NG result'; END IF; END; /
 CREATE OR REPLACE FUNCTION TESTPROC RETURN VARCHAR2
IS
  a NUMBER(1) := 5;
  b NUMBER(1) := 0;
BEGIN
  IF (a = 5) AND (b = 0) THEN
    RETURN 'OK result'; 
  ELSE
    RETURN 'NG result';
  END IF;
END;
/

操作例
1.ファンクション(FUNCTION)を作成します
書式
if (左の条件式) AND (右の条件式)
論理積(AND)の左の式と右の式の両方が条件に合致する場合にtrueになります。
サンプルコード

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> CREATE OR REPLACE FUNCTION TESTPROC RETURN VARCHAR2
2 IS
3 a NUMBER(1) := 5;
4 b NUMBER(1) := 0;
5 BEGIN
6 IF (a = 5) AND (b = 0) THEN
7 RETURN 'OK result';
8 ELSE
9 RETURN 'NG result';
10 END IF;
11 END;
12 /
ファンクションが作成されました。
SQL> CREATE OR REPLACE FUNCTION TESTPROC RETURN VARCHAR2 2 IS 3 a NUMBER(1) := 5; 4 b NUMBER(1) := 0; 5 BEGIN 6 IF (a = 5) AND (b = 0) THEN 7 RETURN 'OK result'; 8 ELSE 9 RETURN 'NG result'; 10 END IF; 11 END; 12 / ファンクションが作成されました。
SQL>  CREATE OR REPLACE FUNCTION TESTPROC RETURN VARCHAR2
  2  IS
  3    a NUMBER(1) := 5;
  4    b NUMBER(1) := 0;
  5  BEGIN
  6    IF (a = 5) AND (b = 0) THEN
  7      RETURN 'OK result';
  8    ELSE
  9      RETURN 'NG result';
 10    END IF;
 11  END;
 12  /

ファンクションが作成されました。

2.ファンクションを実行します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> select testproc from dual;
TESTPROC
--------------------------------------------------------------------------------
OK result
SQL> select testproc from dual; TESTPROC -------------------------------------------------------------------------------- OK result
SQL> select testproc from dual;

TESTPROC
--------------------------------------------------------------------------------
OK result

 

Oracle 21c

Posted by arkgame