DEV Community

John Wakaba
John Wakaba

Posted on

SQL OPERATORS

Introduction

SQL operators help in filtering, combining, and performing logical comparisons on data. They can be categorized as:

  • Comparison Operators (=, !=, <, >, BETWEEN)
  • Logical Operators (AND, OR, NOT, EXISTS)
  • Pattern Matching Operators (LIKE, IN, IS NULL)
  • Set Operators (UNION, INTERSECT, EXCEPT)
  • Conditional Operators (CASE)

1. AND Operator

Filters data where both conditions must be true.

Example: Retrieve movies released after 2010 AND with a rating above 8.0.

SELECT Title, Year, Rating 
FROM movies 
WHERE Year > 2010 AND Rating > 8.0;
Enter fullscreen mode Exit fullscreen mode

2. OR Operator

Filters data where at least one condition is true.

Example: Retrieve movies directed by "Christopher Nolan" OR have a rating above 9.0.

SELECT Title, Director, Rating 
FROM movies 
WHERE Director = 'Christopher Nolan' OR Rating > 9.0;
Enter fullscreen mode Exit fullscreen mode

3. Logical Operators (AND, OR, NOT)

  • AND → Both conditions must be true.
  • OR → At least one condition must be true.
  • NOT → Negates a condition.

Example: Retrieve movies that are not in the "Horror" genre.

SELECT Title, Genre 
FROM movies 
WHERE Genre NOT LIKE '%Horror%';
Enter fullscreen mode Exit fullscreen mode

4. LIKE Operator

Used for pattern matching in text fields.

  • % → Matches multiple characters.
  • _ → Matches a single character.

Example: Retrieve movies whose title starts with 'The'.

SELECT Title 
FROM movies 
WHERE Title LIKE 'The%';
Enter fullscreen mode Exit fullscreen mode

Example: Retrieve movies whose title contains 'War'.

SELECT Title 
FROM movies 
WHERE Title LIKE '%War%';
Enter fullscreen mode Exit fullscreen mode

5. IN Operator

Filters records that match any value in a given list.

Example: Retrieve movies in the Action, Comedy, or Drama genres.

SELECT Title, Genre 
FROM movies 
WHERE Genre IN ('Action', 'Comedy', 'Drama');
Enter fullscreen mode Exit fullscreen mode

6. NOT Operator

Negates a condition.

Example: Retrieve movies not directed by "Steven Spielberg".

SELECT Title, Director 
FROM movies 
WHERE Director NOT IN ('Steven Spielberg');
Enter fullscreen mode Exit fullscreen mode

7. NOT EQUAL Operator (!= or <>)

Filters records where values are not equal.

Example: Retrieve movies not released in 2000.

SELECT Title, Year 
FROM movies 
WHERE Year <> 2000;
Enter fullscreen mode Exit fullscreen mode

8. IS NULL Operator

Finds records where a column has a NULL value.

Example: Retrieve movies where the revenue information is missing.

SELECT Title, Revenue 
FROM movies 
WHERE Revenue IS NULL;
Enter fullscreen mode Exit fullscreen mode

9. UNION Operator

Combines results from two queries, removing duplicates.

Example: Retrieve unique movie titles directed by either "Quentin Tarantino" or "Martin Scorsese".

SELECT Title FROM movies WHERE Director = 'Quentin Tarantino'
UNION
SELECT Title FROM movies WHERE Director = 'Martin Scorsese';
Enter fullscreen mode Exit fullscreen mode

10. UNION ALL Operator

Similar to UNION, but keeps duplicates.

Example: Retrieve all movie titles directed by Tarantino or Scorsese, including duplicates.

SELECT Title FROM movies WHERE Director = 'Quentin Tarantino'
UNION ALL
SELECT Title FROM movies WHERE Director = 'Martin Scorsese';
Enter fullscreen mode Exit fullscreen mode

11. EXCEPT Operator

Returns records from the first query that are not present in the second query.

Example: Retrieve movies directed by "Christopher Nolan" but not starring "Christian Bale".

SELECT Title FROM movies WHERE Director = 'Christopher Nolan'
EXCEPT
SELECT Title FROM movies WHERE Actor LIKE '%Christian Bale%';
Enter fullscreen mode Exit fullscreen mode

12. BETWEEN Operator

Filters data within a range.

Example: Retrieve movies with a rating between 7.0 and 9.0.

SELECT Title, Rating 
FROM movies 
WHERE Rating BETWEEN 7.0 AND 9.0;
Enter fullscreen mode Exit fullscreen mode

13. ALL and ANY Operators

  • ALL → Compares values to all returned values.
  • ANY → Compares values to at least one returned value.

Example: Retrieve movies that have a higher rating than all movies from 2000.

SELECT Title, Rating 
FROM movies 
WHERE Rating > ALL (SELECT Rating FROM movies WHERE Year = 2000);
Enter fullscreen mode Exit fullscreen mode

Example: Retrieve movies that have a higher rating than at least one movie from 2000.

SELECT Title, Rating 
FROM movies 
WHERE Rating > ANY (SELECT Rating FROM movies WHERE Year = 2000);
Enter fullscreen mode Exit fullscreen mode

14. INTERSECT Operator

Returns common records in both queries.

Example: Retrieve movies that both Quentin Tarantino and Martin Scorsese directed.

SELECT Title FROM movies WHERE Director = 'Quentin Tarantino'
INTERSECT
SELECT Title FROM movies WHERE Director = 'Martin Scorsese';
Enter fullscreen mode Exit fullscreen mode

15. EXISTS Operator

Checks if a subquery returns any records.

Example: Retrieve all movies with at least one vote in the votes column.

SELECT Title, Votes 
FROM movies 
WHERE EXISTS (SELECT 1 FROM movies WHERE Votes > 0);
Enter fullscreen mode Exit fullscreen mode

16. CASE Operator

Used for conditional logic in queries.

Example: Categorize movies based on rating.

SELECT Title, Rating, 
    CASE 
        WHEN Rating >= 8.0 THEN 'Excellent'
        WHEN Rating BETWEEN 6.0 AND 7.9 THEN 'Good'
        ELSE 'Average'
    END AS Rating_Category
FROM movies;
Enter fullscreen mode Exit fullscreen mode

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay