Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

Compare three variables with if statement

SQL> CREATE TABLE book (   2    isbn      CHAR(10) PRIMARY KEY,   3    category  VARCHAR2(20),   4    title     VARCHAR2(100),   5    num_pages NUMBER,   6    price     NUMBER,   7    copyright NUMBER(4),   8    emp1   NUMBER,   9    emp2   NUMBER,  10    emp3   NUMBER  11  ); Table created. SQL> SQL> INSERT INTO book (isbn, category, title, num_pages, price, copyright, emp1, emp2, emp3)   2             VALUES ('1', 'Database', 'Oracle', 563, 39.99, 1999, 1, 2, 3); 1 row created. SQL> INSERT INTO book (isbn, category, title, num_pages, price, copyright, emp1, emp2)   2             VALUES ('2', 'Database', 'MySQL', 765, 44.99, 1999, 4, 5); 1 row created. SQL> INSERT INTO book (isbn, category, title, num_pages, price, copyright, emp1, emp2, emp3)   2             VALUES ('3', 'Database', 'SQL Server', 404, 39.99, 2001, 6, 7, 8); 1 row created. SQL> SQL> DECLARE   2    e_Duplicateemp EXCEPTION;   3   4    v_emp1 book.emp1%TYPE;   5    v_emp2 book.emp2%TYPE;   6    v_emp3 book.emp3%TYPE;   7  BEGIN   8    SELECT emp1, emp2, emp3   9      INTO v_emp1, v_emp2, v_emp3  10      FROM book  11      WHERE title = 'XML';  12  13    IF (v_emp1 = v_emp2) OR (v_emp1 = v_emp3) OR(v_emp2 = v_emp3) THEN  14       RAISE e_Duplicateemp;  15    END IF;  16  EXCEPTION  17    WHEN e_Duplicateemp THEN  18      INSERT INTO log_table (info) VALUES ('XML has duplicate emp');  19  END;  20  / SQL> SQL> drop table book; Table dropped.