MySQL - Opérateur BETWEEN : Un Guide Pour Les Débutants
Bonjour à tous, aspirants passionnés de bases de données ! Aujourd'hui, nous allons entreprendre un voyage passionnant dans le monde de MySQL, en nous concentrant spécifiquement sur l'opérateur BETWEEN. Ne vous inquiétez pas si vous êtes nouveau dans la programmation ; je serai votre guide amical, expliquant tout étape par étape. Alors, plongeons dedans !
Qu'est-ce que l'Opérateur BETWEEN ?
Imaginez que vous organisez votre bibliothèque. Vous voulez trouver tous les livres publiés entre 2010 et 2020. C'est exactement ce que l'opérateur BETWEEN nous aide à faire dans MySQL - il nous permet de sélectionner des valeurs dans une plage donnée.
Syntaxe de Base
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
Décomposons cela :
-
SELECT
: C'est comme dire "Je veux voir..." -
column_name(s)
: Ce sont les informations spécifiques que vous voulez voir -
FROM table_name
: C'est là où les informations sont stockées -
WHERE
: C'est comment nous définissons les conditions -
BETWEEN value1 AND value2
: C'est notre plage
Opérateur BETWEEN de MySQL en Action
Disons que nous avons une table appelée books
avec les colonnes id
, title
, author
, et publication_year
. Voici comment nous pourrions utiliser BETWEEN :
SELECT title, author, publication_year
FROM books
WHERE publication_year BETWEEN 2010 AND 2020;
Cette requête nous montrera tous les livres publiés entre 2010 et 2020, inclus. C'est comme demander, "Montre-moi tous les livres de 2010 jusqu'à et y compris 2020."
BETWEEN avec Des Dates
BETWEEN fonctionne très bien avec des dates aussi ! Disons que nous avons une table orders
:
SELECT order_id, customer_name, order_date
FROM orders
WHERE order_date BETWEEN '2023-01-01' AND '2023-12-31';
Cela montrera toutes les commandes passées en 2023. Génial, non ?
MySQL BETWEEN avec l'Opérateur IN
Maintenant, rendons les choses un peu plus intéressantes. Que faire si nous voulons trouver des livres publiés entre 2010 et 2020, mais seulement par certains auteurs ? C'est là que nous combinons BETWEEN avec IN :
SELECT title, author, publication_year
FROM books
WHERE publication_year BETWEEN 2010 AND 2020
AND author IN ('J.K. Rowling', 'George R.R. Martin', 'Stephen King');
Cette requête est comme dire, "Montre-moi les livres de 2010 à 2020, mais seulement si ils sont écrits par ces auteurs spécifiques."
MySQL BETWEEN avec l'Instruction UPDATE
Parfois, nous ne voulons pas seulement voir les données - nous voulons les changer. Disons que nous voulons donner une réduction de 10% à tous les produits priced entre 50 et 100 :
UPDATE products
SET price = price * 0.9
WHERE price BETWEEN 50 AND 100;
Cette requête met à jour les prix, appliquant une réduction de 10% aux produits dans notre plage spécifiée.
Opérateur BETWEEN avec l'Instruction DELETE
L'opérateur BETWEEN peut également être utilisé lorsque nous voulons supprimer des données. Imaginez que nous voulons supprimer toutes les commandes du premier trimestre 2023 :
DELETE FROM orders
WHERE order_date BETWEEN '2023-01-01' AND '2023-03-31';
Cela supprime toutes les commandes passées au cours des trois premiers mois de 2023. Soyez prudent avec les instructions DELETE - vérifiez toujours avant de les exécuter !
MySQL Opérateur NOT BETWEEN
Parfois, nous voulons tout sauf une certaine plage. C'est là que NOT BETWEEN devient pratique :
SELECT title, author, publication_year
FROM books
WHERE publication_year NOT BETWEEN 2010 AND 2020;
Cette requête montre tous les livres publiés avant 2010 ou après 2020.
Opérateur NOT BETWEEN avec l'Opérateur IN
Nous pouvons combiner NOT BETWEEN avec IN pour des requêtes encore plus spécifiques :
SELECT product_name, price
FROM products
WHERE price NOT BETWEEN 50 AND 100
AND category IN ('Electronics', 'Appliances');
Cette requête trouve les produits dans les catégories Electroniques ou Appareils qui sont soit en dessous de 50$, soit au-dessus de 100$.
Utilisation de l'Opérateur BETWEEN dans un Programme Client
Lorsque vous utilisez BETWEEN dans un programme client (comme un script PHP), vous pourriez faire quelque chose comme ceci :
<?php
$min_price = 50;
$max_price = 100;
$query = "SELECT product_name, price FROM products WHERE price BETWEEN ? AND ?";
$stmt = $conn->prepare($query);
$stmt->bind_param("dd", $min_price, $max_price);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo $row['product_name'] . ": $" . $row['price'] . "<br>";
}
?>
Ce script PHP prépare une requête avec des placeholders, lie les valeurs, exécute la requête, puis affiche les résultats.
Conclusion
Et voilà, amis ! Nous avons fait le tour du monde de l'opérateur BETWEEN dans MySQL. De la sélection de base aux mises à jour et suppressions, nous avons vu à quel point ce petit opérateur peut être polyvalent. Souvenez-vous, la pratique rend parfait, donc n'ayez pas peur d'expérimenter avec vos propres requêtes.
Voici un tableau de référence des méthodes que nous avons couvertes :
Méthode | Description |
---|---|
BETWEEN | Sélectionne des valeurs dans une plage donnée |
BETWEEN avec IN | Combine une plage et une sélection de valeurs spécifiques |
BETWEEN avec UPDATE | Met à jour des enregistrements dans une plage spécifique |
BETWEEN avec DELETE | Supprime des enregistrements dans une plage spécifique |
NOT BETWEEN | Sélectionne des valeurs en dehors d'une plage donnée |
NOT BETWEEN avec IN | Combine l'exclusion d'une plage avec une sélection de valeurs spécifiques |
Bonne recherche, et que vos bases de données soient toujours organisées et efficaces !
Credits: Image by storyset