Requete SQL d'inclusion de dates

Résolu
teetee75 Messages postés 24 Date d'inscription   Statut Membre Dernière intervention   -  
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai une table SQL avec 4 champs:
DATEDEB : date début
HEUREDEB : heure début
DATEFIN : Date fin
HEUREFIN : heure de fin

Je veux rechercher via une requête SQL s'il existe des enregistrements dont les dates / heures incluent une période (datedeb / heuredeb et datefin / heurefin).

Le test semble simple:

C'est vérifié si
(datedeb < DATEDEB
AND datefin > DATEDEB)
OR
(datedeb < DATEFIN
AND datefin > DATEFIN)

Par contre là ou ca se complique, c'est dans le cas ou datedeb = DATEDEB ou que datefin = DATEFIN. Là on va devoir s'interesser aux heures.
Avez vous qq chose à me proposer et tout ça en SQL pas en programmation.
Merci par avance.

Tilt.

5 réponses

P@t@ch0n Messages postés 565 Date d'inscription   Statut Membre Dernière intervention   85
 
Question conne, pourquoi avoir séparé les dates des heures ?
0
teetee75 Messages postés 24 Date d'inscription   Statut Membre Dernière intervention   1
 
En fait, il s'agit d'une saisie de l'utilisateur et je n'avais pas penser à concatener ensuite date+heure.
Du coup est-ce que si je concatène mes attributs et que j'ai seulement 2 champs du type
DATEDEB de format JJ-MM-AAAA HH:MM:SS
DATEFIN de format JJ-MM-AAAA HH:MM:SS

d'après toi ma requête
(datedeb < DATEDEB
AND datefin > DATEDEB)
OR
(datedeb < DATEFIN
AND datefin > DATEFIN)
est bonne même si date datedeb = DATEDEB ou que datefin = DATEFIN.
Merci.
0
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
bonjour, il faut que tu regarde du cote du timestamp et de mktime pour convertir tes dates et heures en timestamp, plus facile a comparer.

voici un lien https://www.php.net/mktime
0
teetee75 Messages postés 24 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour,

Merci pour la fonction PHP mktime mais je voudrais la même chose mais en SQL.
Est-ce qu'il existe un équivalent en SQL pour MYSQL?
Merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
en sql je crois me souvenir que DATE_FORMAT peut trepondre a tes attentes, à confirmer, j'utilise principalement Mysql

pour t'aider regarde ici
http://dev.mysql.com/doc/refman/5.0/fr/date-and-time-functions.html
0