  # SQL Operators

22 September, 2018

Ratings

## SQL Operators Overview

An operator is a reserved word or a character used primarily in an SQL statement's WHERE clause to perform operation(s), such as comparisons and arithmetic operations. Operators are used to specify conditions in an SQL statement and to serve as conjunctions for multiple conditions in a statement.

• Arithmetic operators
• Comparison operators
• Logical operators
• Operators used to negate conditions

### SQL Arithmetic Operators

Assume variable a holds 10 and variable b holds 20 then:

 Operator Description Example + Addition - Adds values on either side of the operator a+b will give 30 - Subtraction - Subtracts right hand operand from left hand operand a-b will give -10 * Multiplication - Multiplies values on either side of the operator a*b will give 200 / Division - Divides left hand operand by right hand operand b/a will give 2 % Modulus - Divides left hand operand by right hand operand and returns remainder b%a will give 0

Here are simple examples showing usage of SQL Arithmetic Operators: SQL> select 10+ 20; +--------+ | 10+ 20 | +--------+ |     30     | +--------+ 1 row in set (0.00 sec) SQL> select 10 * 20; +---------+ | 10 * 20 | +---------+ |     200    | +---------+ 1 row in set (0.00 sec) SQL> select 10 / 5; +--------+ | 10 / 5   | +--------+ | 2.0000| +--------+ 1 row in set (0.03 sec) SQL> select 12 %   5; +---------+ | 12 %  5  | +---------+ |       2       | +---------+ 1 row in set (0.00 sec)

### SQL Comparison Operators

Assume variable a holds 10 and variable b holds 20 then:

 Operator Description Example = Checks if the value of two operands are equal or not, if yes then condition becomes true. (a = b) is not true. != Checks if the value of two operands are equal or not, if values are not equal then condition becomes true.. (a != b)is true. < > Checks if the value of two operands are equal or not, if values are not equal then condition becomes true. (a <> b) is true > Checks if the value of left operand is greater than the value of right operand, if yes then condition becomes true. (a > b) is not true < Checks if the value of left operand is less than the value of right operand, if yes then condition becomes true. (a < b) is true >= Checks if the value of left operand is greater than or equal to the value of right operand, if yes then condition becomes true. (a >= b) is not true <= Checks if the value of left operand is less than or equal to the value of right operand, if yes then condition becomes true. (a <= b)is true. !< Checks if the value of left operand is not less than the value of right operand, if yes then condition becomes true. (a !< b)is false. !> Checks if the value of left operand is not greater than the value of right operand, if yes then condition becomes true. (a !> b)is true.

Consider CUSTOMERS table has following records: SQL> SELECT * FROM CUSTOMERS; +----+----------+-----+-------------- +------------+ | ID | NAME     | AGE | ADDRESS   | SALARY   | +----+----------+-----+---------------+------------+ |  1    | Ramesh |  32   | Ahmedabad |   2000.00 | |  2    | Khilan   |  25   | Delhi             |  1500.00   | |  3    | kaushik |  23   | Kota              |  2000.00   | |  4    | Chaitali |  25   | Mumbai       |  6500.00   | |  5    | Hardik   |   27  | Bhopal         |  8500.00   | |  6    | Komal    |  22   | MP                |  4500.00   | |  7    | Muffy     |  24    | Indore          | 10000.00 | +----+----------+-----+--------------+------------+ 7 rows in set (0.00 sec) Here are simple examples showing usage of SQL Comparison Operators: SQL> SELECT * FROM  CUSTOMERS   WHERE   SALARY > 5000; +----+----------+-----+---------+----------+ | ID | NAME     | AGE | ADDRESS | SALARY    | +----+----------+-----+---------+----------+ |  4 | Chaitali |  25 | Mumbai  |  6500.00 | |  5 | Hardik   |  27 | Bhopal  |  8500.00 | |  7 | Muffy    |  24 | Indore  | 10000.00 | +----+----------+-----+---------+----------+ 3 rows in set (0.00 sec) SQL>  SELECT * FROM CUSTOMERS WHERE SALARY = 2000; +----+---------+-----+-----------+---------+ | ID | NAME    | AGE | ADDRESS    | SALARY  | +----+---------+-----+-----------+---------+ |  1 | Ramesh  |  32 | Ahmedabad | 2000.00 | |  3 | kaushik |  23 | Kota      | 2000.00 | +----+---------+-----+-----------+---------+ 2 rows in set (0.00 sec) SQL>  SELECT * FROM CUSTOMERS WHERE SALARY != 2000; +----+----------+-----+---------+----------+ | ID | NAME     | AGE | ADDRESS | SALARY    | +----+----------+-----+---------+----------+ |  2 | Khilan   |  25 | Delhi   |  1500.00 | |  4 | Chaitali |  25 | Mumbai  |  6500.00 | |  5 | Hardik   |  27 | Bhopal  |  8500.00 | |  6 | Komal    |  22 | MP      |  4500.00 | |  7 | Muffy    |  24 | Indore  | 10000.00 | +----+----------+-----+---------+----------+ 5 rows in set (0.00 sec) SQL> SELECT * FROM CUSTOMERS WHERE SALARY <> 2000; +----+----------+-----+---------+----------+ | ID | NAME     | AGE | ADDRESS | SALARY    | +----+----------+-----+---------+----------+ |  2 | Khilan   |  25 | Delhi   |  1500.00 | |  4 | Chaitali |  25 | Mumbai  |  6500.00 | |  5 | Hardik   |  27 | Bhopal  |  8500.00 | |  6 | Komal    |  22 | MP      |  4500.00 | |  7 | Muffy    |  24 | Indore  | 10000.00 | +----+----------+-----+---------+----------+ 5 rows in set (0.00 sec) SQL> SELECT * FROM CUSTOMERS WHERE SALARY >= 6500; +----+----------+-----+---------+----------+ | ID | NAME     | AGE | ADDRESS | SALARY    | +----+----------+-----+---------+----------+ |  4 | Chaitali |  25 | Mumbai  |  6500.00 | |  5 | Hardik   |  27 | Bhopal  |  8500.00 | |  7 | Muffy    |  24 | Indore  | 10000.00 | +----+----------+-----+---------+----------+ 3 rows in set (0.00 sec)

### SQL Logical Operators 