MySQL logical AND, logical OR and BETWEEN operator practical queries.
=======================================================================================================================
Logical AND
SELECT title, author_lname, released_year FROM books
WHERE author_lname='Eggers';
SELECT title, author_lname, released_year FROM books
WHERE released_year > 2010;
SELECT
title,
author_lname,
released_year FROM books
WHERE author_lname='Eggers'
AND released_year > 2010;
SELECT 1 < 5 && 7 = 9;
-- false
SELECT -10 > -20 && 0 <= 0;
-- true
SELECT -40 <= 0 AND 10 > 40;
--false
SELECT 54 <= 54 && 'a' = 'A';
-- true
SELECT *
FROM books
WHERE author_lname='Eggers'
AND released_year > 2010
AND title LIKE '%novel%';
Please note, as of MySQL 8.0.17, the && operator is deprecated and support for it will be removed in a future MySQL version. Applications should be adjusted to use the standard SQL AND operator.
If you're using MySQL 5.7 or older, which most of you are if you're using GoormIDE, then you don't have to worry about this right now. But, in newer versions of MySQL (8.0.17 and newer) you will need to replace && with AND.
=====================================================================
Logical OR
SELECT
title,
author_lname,
released_year
FROM books
WHERE author_lname='Eggers' || released_year > 2010;
SELECT 40 <= 100 || -2 > 0;
-- true
SELECT 10 > 5 || 5 = 5;
-- true
SELECT 'a' = 5 || 3000 > 2000;
-- true
SELECT title,
author_lname,
released_year,
stock_quantity
FROM books
WHERE author_lname = 'Eggers'
|| released_year > 2010
OR stock_quantity > 100;
Please note, as of MySQL 8.0.17, the || operator is deprecated and support for it will be removed in a future MySQL version. Applications should be adjusted to use the standard SQL OR operator.
If you're using MySQL 5.7 or older, which most of you are if you're using GoormIDE, then you don't have to worry about this right now. But, in newer versions of MySQL (8.0.17 and newer) you will need to replace || with OR.
=====================================================================
Between
SELECT title, released_year FROM books WHERE released_year >= 2004 && released_year <= 2015;
SELECT title, released_year FROM books
WHERE released_year BETWEEN 2004 AND 2015;
SELECT title, released_year FROM books
WHERE released_year NOT BETWEEN 2004 AND 2015;
SELECT CAST('2017-05-02' AS DATETIME);
show databases;
use new_testing_db;
SELECT name, birthdt FROM people WHERE birthdt BETWEEN '1980-01-01' AND '2000-01-01';
SELECT
name,
birthdt
FROM people
WHERE
birthdt BETWEEN CAST('1980-01-01' AS DATETIME)
AND CAST('2000-01-01' AS DATETIME);
=====================================================================
Comments
Post a Comment