8797 sujets

Développement web côté serveur, CMS

Bonjour Smiley smile

J'ai une table événements dans laquelle coexistent deux types d’événements:

-Les ponctuels ( caractérisés par une date absolu (timestamp) et une durée).

-Les cycliques, (une fois pas semaine) ( caractérisés par une date relative (un timestamp relatif, pour obtenir le début, j'y ajoute le timestamp du lundi à 0h00:00 ))

Je voudrais pour une semaine donnée récupérer mes événements, en ne récupérant pas d'événement cyclique si entre son début et sa fin arrive un événement ponctuel ( les événements ponctuels ont priorité donc ).



Je pensais aux sous-requêtes, mais j'avoue ma sincère envie de me rouler sur le sol en bavant et poussant des petits cris saccadés et stridents.
un schéma de ta table et quelques exemples d’occurrences seraient les bienvenues parce que là le café n'a pas encore fait assez effet à cette heure-ci pour inventer une structure de table pour imaginer les requêtes ....
Ma table, rien de bien compliqué à ce niveau là

      
Evenement:
  tableName: Evenements
  columns:
    id:
      type: integer(4)
      autoincrement: true
      primary: true
    titre:
      type: string(255)
    cyclique:
      type: integer(1)
    description:
      type: string(1023)
    debut:
      type: integer(10)
    duree:
      type: integer(5)

Modifié par NaN (08 Jun 2011 - 10:00)
Hum ...
Alors d'abord il faut que tu écrives la requête (SSRqt) qui sélectionne les événements cycliques qui possèdent un événement ponctuel entre sa date de debut et de fin .. facile !
ensuite tu écrits la requête (rqt) qui sélectionne tous les événements ULTRA facile !!!!
et tu fais :

rqt NOT IN (SSRqt);

!!!!