You are currently viewing SQL 1.9 SQL NOT 


Tutorial: Learning the Basics of SQL NOT Operator

In SQL, the NOT operator is used to negate a condition, essentially flipping its truth value. It is commonly used in combination with other operators such as WHERE to filter out rows that don’t meet a specific condition. In this tutorial, we’ll delve into the basics of using the NOT operator in SQL.

1. Setting Up Your Environment

Before we begin, ensure you have access to a SQL database management system (DBMS) like MySQL, PostgreSQL, SQLite, or SQL Server. You can either use an online SQL compiler or set up a local environment.

2. Creating a Sample Table

For the purpose of this tutorial, let’s create a simple table named students with the following schema:

CREATE TABLE students (
    name VARCHAR(50),
    age INT,
    grade VARCHAR(2)

3. Inserting Sample Data

Next, let’s populate our students table with some sample data:

INSERT INTO students (id, name, age, grade)
    (1, 'Alice', 20, 'A'),
    (2, 'Bob', 22, 'B'),
    (3, 'Charlie', 19, 'C'),
    (4, 'David', 21, 'A'),
    (5, 'Eve', 23, 'B');

4. Understanding the NOT Operator

The NOT operator negates a condition. For example, if you have a condition x, NOT x will be true when x is false, and vice versa.

5. Basic Usage in WHERE Clause

Let’s start with a simple example. Suppose we want to select all students who are not in grade ‘A’. We can use the NOT operator as follows:

SELECT * FROM students
WHERE NOT grade = 'A';

This query will return all students whose grade is not ‘A’. In this case, it will return:

id | name    | age | grade
2  | Bob     | 22  | B
3  | Charlie | 19  | C
5  | Eve     | 23  | B

6. Combining NOT with Other Operators

You can combine the NOT operator with other SQL operators such as AND and OR for more complex conditions. For example:

SELECT * FROM students
WHERE age > 20
AND NOT grade = 'A';

This query selects students older than 20 years but not in grade ‘A’.

7. Using NOT IN Operator

Another common usage of NOT is with the IN operator. Let’s say we want to select students who are not in grades ‘A’ or ‘B’:

SELECT * FROM students
WHERE grade NOT IN ('A', 'B');

This query will return students with grades other than ‘A’ or ‘B’.


In this tutorial, we’ve covered the basics of using the NOT operator in SQL. It’s a powerful tool for negating conditions and filtering data. Practice using it with various scenarios to become comfortable with its usage. Remember, SQL syntax may vary slightly depending on the DBMS you’re using, so always refer to the documentation for your specific system.

Leave a Reply