Outils pour utilisateurs

Outils du site


cours:informatique:dev:db:postgres:fondamentaux_postgresql:240_between

PostgreSQL BETWEEN

Notes et traduction du tutoriel PostgreSQL Tutorial

L'opérateur BETWEEN permet de vérifier si une valeur se trouve dans un intervalle.

VALUE BETWEEN low AND high;

Si “value” est supérieure ou égale à “low” et inférieure ou égale à “high” l'opérateur BETWEEN retourne vrai, sinon il retourne faux.

On peut employer un équivalent à BETWEEN en utilisant les opérateurs de comparaisons et l'opérateur AND :

VALUE BETWEEN low AND high;
 
-- Equivaut à
VALUE >= low AND VALUE <= high

Si l'on souhaite vérifier au contraire qu'une valeur se trouve hors intervalle :

VALUE NOT BETWEEN low AND high
 
-- Equivaut à
VALUE < low OR VALUE > high

En pratique on utilise fréquemment l'opérateur BETWEEN dans la clause WHERE des instructions SELECT, INSERT, UPDATE ou DELETE.

SELECT
  payment_id,
  amount
FROM
  payment
WHERE
  payment_id BETWEEN 17503 AND 17505
ORDER BY
  payment_id;
 
-- hors intervalle
SELECT
  payment_id,
  amount
FROM
  payment
WHERE
  payment_id NOT BETWEEN 17503 AND 17505
ORDER BY
  payment_id;

Un usage particulier de BETWEEN concerne les dates. Notez qu'il faut utiliser le format de date ISO 8601 (YYYY-MM-DD) pour que la comparaison puisse être valide.

L'exemple ci-dessous utilise l'opérateur BETWEEN pour sélectionner tous les paiements qui ont eu lieu entre le 15 et le 20 février 2007 :

SELECT
  payment_id,
  amount,
  payment_date
FROM
  payment
WHERE
  payment_date BETWEEN '2007-02-15' AND '2007-02-20'
  AND amount > 10
ORDER BY
  payment_date;

Résumé

  • Utiliser l'opérateur BETWEEN pour vérifier qu'une valeur appartient à un intervalle ;
  • Utiliser l’opérateur NOT BETWEEN au contraire pour vérifier qu'une valeur se trouve hors intervalle.

◁ Précédent | ⌂ Retour au sommaire | Suivant ▷

cours/informatique/dev/db/postgres/fondamentaux_postgresql/240_between.txt · Dernière modification : 2025/04/09 20:18 de yoann