Requête SQL

Résolu

Bonjour à tous et toutes,

Je dispose d'une base de données avec une colonne dédiée à la date d'enregistrement.

Je voudrais extraire les dates supérieurs à 6 mois.

Je précise que j'ai besoin de toutes les colonnes de la base (d'où mon SELECT *) puisqu'il s'agira de remplir un tableau ne contenant que les éléments de + de 6 mois.

J'ai tenté plusieurs requêtes mais sans succès.Voici la dernière en date :

$search = $this->bdd->query("SELECT * FROM {$this->table} WHERE datum < CURRENT_DATE - 'INTERVAL 180 DAYS' ORDER BY SUBSTR(numbers,7,4), SUBSTR(numbers,1,5)");

Merci d'avance pour votre aide


Windows / Firefox 108.0

2 réponses

  1. Bonjour

    SELECT * FROM {$this->table} WHERE datum >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
    

    Essaye ça et vérifie bien que ta colonne datum est bien de type DATE ou DATETIME dans ta base de donnée pour éviter toutes erreurs de traitement.

    1. Bonjour xHaMaz,

      Merci pour ta réponse cela fonctionne très bien. J'ai juste inversé le signe >= en <=

      Merci beaucoup