Use parenthesis to change the order of AND and OR : AND OR « Query Select « Oracle PL/SQL Tutorial






SQL>
SQL>
SQL> CREATE TABLE titles(
  2    title_id   CHAR(3)      NOT NULL,
  3    title_name VARCHAR(40)  NOT NULL,
  4    type       VARCHAR(10)  NULL    ,
  5    pub_id     CHAR(3)      NOT NULL,
  6    pages      INTEGER      NULL    ,
  7    price      DECIMAL(5,2) NULL    ,
  8    sales      INTEGER      NULL    ,
  9    pubdate    DATE         NULL    ,
 10    contract   SMALLINT     NOT NULL
 11  );

Table created.

SQL>
SQL>
SQL>
SQL>
SQL> INSERT INTO titles VALUES('T01','Java','history','P01',111,21.99,566,DATE '2000-08-01',1);

1 row created.

SQL> INSERT INTO titles VALUES('T02','Oracle','history','P03', 114,19.95,9566,DATE '1998-04-01',1);

1 row created.

SQL> INSERT INTO titles VALUES('T03','SQL','computer','P02', 122,39.95,25667,DATE '2000-09-01',1);

1 row created.

SQL> INSERT INTO titles VALUES('T04','C++','psychology','P04', 511,12.99,13001,DATE '1999-05-31',1);

1 row created.

SQL> INSERT INTO titles VALUES('T05','Python','psychology','P04', 101,6.95,201440,DATE '2001-01-01',1);

1 row created.

SQL> INSERT INTO titles VALUES('T06','JavaScript','biography','P01', 173,19.95,11320,DATE '2000-07-31',1);

1 row created.

SQL> INSERT INTO titles VALUES('T07','LINQ','biography','P03', 331,23.95,1500200,DATE '1999-10-01',1);

1 row created.

SQL> INSERT INTO titles VALUES('T08','C#','children','P04', 861,10.00,4095,DATE '2001-06-01',1);

1 row created.

SQL> INSERT INTO titles VALUES('T09','SQL Server','children','P04', 212,13.95,5000,DATE '2002-05-31',1);

1 row created.

SQL> INSERT INTO titles VALUES('T10','AJAX','biography','P01', NULL,NULL,NULL,NULL,0);

1 row created.

SQL> INSERT INTO titles VALUES('T11','VB','psychology','P04', 821,7.99,94123,DATE '2000-11-30',1);

1 row created.

SQL> INSERT INTO titles VALUES('T12','Office','biography','P01', 507,12.99,100001,DATE '2000-08-31',1);

1 row created.

SQL> INSERT INTO titles VALUES('T13','VBA','history','P03', 812,29.99,10467,DATE '1999-05-31',1);

1 row created.

SQL>
SQL>
SQL>
SQL> SELECT title_id, type, price
  2    FROM titles
  3    WHERE (type  = 'history' OR type  = 'biography') AND price < 20;

TIT TYPE            PRICE
--- ---------- ----------
T02 history         19.95
T06 biography       19.95
T12 biography       12.99

SQL>
SQL> drop table titles;

Table dropped.

SQL>
SQL>








2.11.AND OR
2.11.1.Use AND to link two conditions
2.11.2.Use 'OR' to link two conditions
2.11.3.Combine three conditions with OR
2.11.4.(state = 'CA') OR (state <> 'CA')
2.11.5.1=1 or 1=0 and 0=1 (case 1)
2.11.6.(1=1 or 1=0) and 0=1 (case 2)
2.11.7.1=1 or (1=0 and 0=1) (case 3)
2.11.8.CONDITION
2.11.9.Combine NOT and AND
2.11.10.Not Equal and OR
2.11.11.Replace IN operator with or operator
2.11.12.Combine conditions with AND and OR
2.11.13.Use parenthesis to change the order of AND and OR