IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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 MySQL Discussion :

trouver une valeur dans un intervalle


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 88
    Points : 48
    Points
    48
    Par défaut trouver une valeur dans un intervalle
    Bonjour,
    j'ai besoin de me faire un emploi du temps avec des cours qui ne sont pas toutes les semaines.
    donc j'ai un champ semaine avec par exemple : 65-70,72,74-76.
    qui signifie les semaines 65 à 70,la semaine 72 et les semaines 74 à 76.
    Par contre je ne sais pas comment je peux faire pour déterminer si la semaine courante, par exemple 68 est bien dans l'intervalle.
    Puis je le faire en mysql ou dois je le faire grâce au php?
    Merci d'avance
    Gwenhaël
    Arsenic et vieille ferrailles
    http://www.trabucayre.com

  2. #2
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    slt..

    si tu met dans 2 colonnes, ex: sem_deb et sem_fin.. tu peut le faire, mais ca reste pas trop lisible...


    d´apres ce que je comprend, ta une date de depart(j´ai pris 2000-01-01), et tu sommes les semaines a cette date.

    si oui:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    select if (curdate()>
    (SELECT DATE_ADD('2000-01-01', INTERVAL 
    (select sem_deb from table  where condition) week)) 
    and  
     curdate()<
    (SELECT DATE_ADD('2000-01-01', INTERVAL 
    (select sem_fin from table where condition) week) ),
    'dans l´intervale','pas dans l´intervale');
    pas trop lisible, et jsais pas si y a plus simple

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 88
    Points : 48
    Points
    48
    Par défaut
    Ben disont je n'ai pas spécialement de date de départ.
    En fait pour un cour particuliers j'ai des semaines où j'ai cours et d'autres ou j'en ai pas...
    donc je pensais faire un truc du genre '-' pour définir un intervalle et un ',' pour séparer un intervalle ou une semaine d'une autre.
    dans le champ semaine de ma table cours j'ai pour le cours d'algo : 65-70,72,74-76.
    si je fait une requête en semaine 64 ou 71 par exemple j'aurais pas la ligne du cours d'algo
    par contre si je fais la même requête en semaine 68 le cours me sera retourné.
    donc j'aurais besoin de pouvoir déterminer si le n° de la semaine est dans l'ensemble des dates de ce cours ...
    Arsenic et vieille ferrailles
    http://www.trabucayre.com

  4. #4
    Membre éprouvé
    Avatar de Biglo
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 537
    Points : 984
    Points
    984
    Par défaut
    Salut,

    C'est une relation N,N : pour une semaine donnée, tu peux avoir plusieurs cours. Et un cours donné peut avoir lieu lors de plusieurs semaines.

    Donc si tu as modélisé proprement cette solution, tu devrais avoir une table du genre A_Lieu (id_cours, num_semaine). Où pour chaque cours, toutes les semaines sont enregistrées.

    Maintenant, si tu veux vraiment représenter un intervalle, pour gagner de la place par exemple, je te conseille de faire une table avec des colonnes debut et fin. Et si cet intervalle ne concerne qu'une seule semaine, debut et fin auront la même valeur.

Discussions similaires

  1. [XL-2007] trouver une valeur dans une liste avec un palier
    Par manibu1664 dans le forum Excel
    Réponses: 9
    Dernier message: 23/03/2010, 04h57
  2. Réponses: 4
    Dernier message: 03/12/2009, 11h50
  3. Trouver une valeur dans une table en VBA
    Par Zoethibault dans le forum VBA Access
    Réponses: 4
    Dernier message: 12/11/2008, 08h59
  4. Comment trouver une valeur dans un tableau ?
    Par wizou44 dans le forum Excel
    Réponses: 20
    Dernier message: 29/08/2008, 10h57
  5. Trouver une valeur dans une liste
    Par Erwane dans le forum Scheme
    Réponses: 11
    Dernier message: 31/03/2008, 21h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo