Requête sur tranches horaires

bobafric

XLDnaute Occasionnel
Bonjour
Petit problème de conception dans une requête access.
Je travaille sur des journées qui commencent à 15h et finissent à 3h du matin.
J’ai des entrées et sorties (clients) à répertorier selon la tranche horaire par exemple :
Je veux répertorier tous les produits sortis au mois de mai de 15h à 21h sur une requête matinée, et les sorties de 21h à 3h du matin sur une requête soirée.
J’ai réussi pour la matinée de 15h à 21h voir SQL ci-dessous

Requête matinée :
SELECT Clients.[Code client], Commandes.[Code client], Clients.Prenom, Commandes.Journee, Commandes.Orientation, Commandes.Heure
FROM Periode, Clients INNER JOIN Commandes ON Clients.[Code client] = Commandes.[Code client]
WHERE (((Month([journee]))=[indiquez le mois]) AND ((Commandes.Heure) Between #12/30/1899 15:0:1# And #12/30/1899 21:0:0#));

Mais je n’y arrive pas pour la soiréé de 21h à 03h du matin

Requête soiréee
SELECT Clients.[Code client], Commandes.[Code client], Clients.Prenom, Commandes.Journee, Commandes.Orientation, Commandes.Heure
FROM Periode, Clients INNER JOIN Commandes ON Clients.[Code client] = Commandes.[Code client]
WHERE (((Month([journee]))=[indiquez le mois]) AND ((Commandes.Heure) Between #12/30/1899 15:0:1# And #12/30/1899 21:0:0#));

Le résultat me donne le relevé de 15h à 21h de tous les jours du mois

Table Commandes
Nom du champ Type de données Description

N° commande NuméroAuto
Code client Numérique
N° employé Numérique
Date commande Date/heure
Heure Date :heure
Journée Date :heure

Propriétés du champ : Date commande

Valeur par défaut : date()

Propriétés du champ : Journée
Valeur par défaut : VraiFaux(Temps()>='00:01' Et Temps()<='04:00';Date()-1;Date())

J’espère être asez clair dans mes explications pour que vous puissiez m’aider.
Merci d’avance Bob
 

chris

XLDnaute Barbatruc
Re : Requête sur tranches horaires

Bonjour

Tu as mis 2 fois la même chose.

Je ne sais pas comment sont tes données : il faut que le champ heure dans la table soit au format date abrégée.

Dans la requête : >=#21:00:00# Ou <=#03:00:00# marche mais quand cela se passe entre 00:00 et 03:00 c'est le jour suivant en fait.

Ton champ journée semble régler ce point : attention aux PB des fins de mois.
 
Dernière édition:

bobafric

XLDnaute Occasionnel
Re : Requête sur tranches horaires_RESOLU

Merci Chris
ça marche, je n'étais pas loin mais il me fallait ton aide
Voici le résultat

SELECT Clients.[Code client], Commandes.[Code client], Clients.Prenom, Commandes.Journee, Commandes.Heure, Commandes.Orientation
FROM Periode, Clients INNER JOIN Commandes ON Clients.[Code client] = Commandes.[Code client]
WHERE (((Commandes.Heure)>=#12/30/1899 21:0:0# Or (Commandes.Heure)<=#12/30/1899 3:0:0#) AND ((Month([journee]))=[indiquez le mois]));

A bientôt
Bob
 

Statistiques des forums

Discussions
312 211
Messages
2 086 292
Membres
103 171
dernier inscrit
clemm