1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

Requette HFSQL pour filtrer les heures pleine.

Discussion dans 'Base de donnés & HFSQL' créé par Defcom, Fev 15, 2019.

Tags:
  1. Defcom

    Defcom New Member

    Inscrit:
    Jan 23, 2018
    Messages:
    8
    J'aime reçus:
    5
    Bonjour,

    J'ai une base de donnée HFSQL qui contient les enregistrements suivant :

    TA 13 29/11/2018 02:00:11
    TA 13 29/11/2018 02:10:12
    TA 13 29/11/2018 02:20:09
    TA 13 29/11/2018 02:30:34
    TA 13 29/11/2018 02:40:12
    TA 13 29/11/2018 02:50:14
    TA 13 29/11/2018 03:00:09
    TA 13 29/11/2018 03:10:32
    TA 13 29/11/2018 03:20:12
    TA 13 29/11/2018 03:30:24
    etc .....

    Je cherche une requête pour récupéré seulement les heures pleine

    Exemple

    TA 13 29/11/2018 02:00:11
    TA 13 29/11/2018 03:00:09
    TA 13 29/11/2018 04:00:09
    TA 13 29/11/2018 05:00:09


    Pour le moment je récupère tous les valeurs entre deux date et heure.

    Cordialement
     
    #1 Defcom, Fev 15, 2019
    Dernière édition: Fev 15, 2019
    Tags:
  2. elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150
    CRée UNE Requette AVEC CONDITION SUR TON CHAMP DATE COMME SUITE / milieu(fichier.date,21,22)=0
     
  3. Defcom

    Defcom New Member

    Inscrit:
    Jan 23, 2018
    Messages:
    8
    J'aime reçus:
    5
    elhacene je ne vois pas comment mettre du code wlangage sur le champ DATE.


    j'ai déjà une requête dans l’éditeur de requête qui est la suivante :

    SELECT

    Statistique.Tour AS Tour,
    Statistique.Etage AS Etage,
    Statistique.DateEtHeure AS DateEtHeure,
    Statistique.Temperature AS Temperature,
    FROM
    Statistique
    WHERE
    Statistique.DateEtHeure BETWEEN {ParamDateEtHeureDebut} AND {ParamDateEtHeureFin}

    je voudrais l'adapter pour filtré les heures pleine.
     
  4. PhantomX

    PhantomX Member

    Inscrit:
    Juil 11, 2018
    Messages:
    78
    J'aime reçus:
    61
    Je ne sais pas si c'est résolu mais bon...

    Si j'ai bien saisie, tu voudrais filtrer les enregistrement sur les heures et sortir seulement ceux qui on les minutes à 0 ?
    Si c'est ça...

    Dans ta clause WHERE
    MID(Statistique.DateEtHeure, 9,2) BETWEEN {pHeureDebut} AND {pHeureFin}
    and MID(Statistique.DateEtHeure, 11, 2) = '00' // les minutes doivent être égal à 0 mais vu que ça retourne une chaine on met '00'

    (9 étant le premier caractère à extraire, 2 étant la longueur de caractère à extraire, * attention de passé tes paramètres au format chaine. Ex.: "03" si tu veux 3 heures, car le résultat retourne une chaine de caractère, si tu met 2 en paramètres, ça ne fonctionnera pas.


    Tu peux l'essayer dans ta clause SELECT
    MID(Statistique.DateEtHeure, 9,2) as Heure
    MID(Statistique.DateEtHeure, 11,2) as Minute

    Ceci devrait te retourner seulement les 02, 03, 04, ..., 14, 15, 16,... pour les heures


    PS évidement je prend en considération que c'est réellement une dateheure donc : 29/11/2018 02:00:11 = "29112018020011"
     
  5. faq

    faq Active Member

    Inscrit:
    Fev 13, 2019
    Messages:
    411
    J'aime reçus:
    35
    Bonjour

    Tester sur les minutes

    si Datte..minute=0 alors
    //traitement
    fin
     
  6. Defcom

    Defcom New Member

    Inscrit:
    Jan 23, 2018
    Messages:
    8
    J'aime reçus:
    5
    Bonjour,

    Merci PhantomX et au autre pour vos réponse.
    J'ai juste filtré sur la clause WHERE les minutes. (Voici ma requête)

    SELECT

    Statistique.Tour AS Tour,
    Statistique.Etage AS Etage,
    Statistique.DateEtHeure AS DateEtHeure,
    Statistique.Temperature AS Temperature,

    FROM
    Statistique

    WHERE

    Statistique.DateEtHeure BETWEEN {ParamDateEtHeureDebut} AND {ParamDateEtHeureFin}
    AND MID(Statistique.DateEtHeure, 11, 2) = '00'
     
    mikee5, Man et elhacene aiment ça.

Partager cette page

Chargement...