Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes PostgreSQL Discussion :

Fonction d'intervalle selon la date


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre à l'essai
    Fonction d'intervalle selon la date
    Bonjour,j'ai beaucoup de misère avec cette fonction. Je tente d'afficher un message d'erreur losrque le NOW() ne se trouve pas entre la dateDePrise et la dateDePrise + INTERVAL '1 day'.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    CREATE OR REPLACE FUNCTION mesureInterval_lim()
    RETURNS TRIGGER AS
    $$
      BEGIN
        IF NOT EXISTS
        (
          SELECT *
          FROM MesureInterval JOIN Processus USING (idMesure)
          WHERE (Processus.idProcessus = 'PROC001' AND now() <= mesureinterval.dateDePrise + INTERVAL '1 day')
            OR
          (Processus.idProcessus = 'PROC002' AND  now() <= mesureinterval.dateDePrise + INTERVAL '1 day')
        )
      THEN
        RETURN NEW;
      ELSE
        RAISE EXCEPTION 'Veuillez passer à la prochaine étape';
        RETURN NULL;
      END IF;
    END;
    $$
    LANGUAGE plpgsql;

  2. #2
    Membre actif
    "le NOW() ne se trouve pas entre la dateDePrise et la dateDePrise + INTERVAL '1 day'"

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    now() BETWEEN dateDePrise AND dateDePrise + INTERVAL '1 day'
    ?