`AND`

, `OR`

, and `NOT`

Operators are logical SQL query commands used for multiple conditional situations on a table. Let’s take a look at the table named students that we created earlier.

For example, the class number `149`

has more than one student, let’s see right away;

```
SELECT * FROM students WHERE class_no = 149
```

As you can see, two students are in the same class.

## AND Operator

Here, we want to draw the line with both the student whose class number is `149`

and the information that his final mark is more than `90`

. In other words, we want to obtain rows that satisfy more than one condition, for this we use the `AND`

operator.

Here, if we say `1`

when the condition is met, `0`

if the condition is not met, our result will be met only if both conditions are met, and in other cases, our result will be `0`

, that is, it will not be met. That is, all conditions must be met for results to be achieved.

CONDITION 1 | CONDITION 2 | RESULT |
---|---|---|

0 | 0 | 0 |

0 | 1 | 0 |

1 | 0 | 0 |

1 | 1 | 1 |

```
SELECT * FROM students WHERE class_no = 149 AND final > 90
```

We have obtained one line satisfying these conditions.

## OR Operator

We just pulled the data that satisfies two different conditions at the same time. Now, let’s pull the data, as well as the rows that satisfy one of the two conditions, for this we use the `OR`

operator for SQL queries; Here again, assuming that there are two conditions in the same way, the result is not provided in cases where the two conditions are not met only, but the result is provided in all other cases. That is, at least one condition must be met.

CONDITION 1 | CONDITION 2 | RESULT |
---|---|---|

0 | 0 | 0 |

0 | 1 | 1 |

1 | 0 | 1 |

1 | 1 | 1 |

Now let’s take the data on the table with the name of the class number `149`

or the final grade above `90`

.

```
SELECT * FROM students WHERE class_no = 149 OR final > 90
```

## NOT Operator

It is used to retrieve all data outside the specified expression. In other words, in the opposite case, the result is provided. Let’s see our table now.

For example, let’s take all students whose name is not `Baransel`

.

```
SELECT * FROM students WHERE NOT name = "Baransel"
```

Note: Another point to note here is that we write in quotation marks for columns consisting of characters.

We have obtained a table for all the students you see, except for `Baransel`

.

Let’s end the post with one final example.

Let’s take the lines without the student name `Baransel`

and the final grade is less than 60 or greater than 90.

```
SELECT * FROM students WHERE NOT (name = "Baransel") AND (final < 60 OR final > 90)
```