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 :

Requête conditionnelle avec recherche entre 2 dates [MySQL-5.0]


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 4
    Par défaut Requête conditionnelle avec recherche entre 2 dates
    Bonjour a vous tous!

    J'ai parcouru plusieurs discussions sur ce forum sans trouver exactement de quoi solutionner mon problème.

    Voilà: j'ai besoin de créer une requête qui, selon le bouton coché dans mon formulaire (recherche sur période fixe ou sélectionnée), me donnera soit une période pré-déterminée ou utilisera la période sélectionné dans mon formulaire. Ma période fixe est directement entré dans ma requête. Pour celle sélectionnée, j'ai créé 2 champ date (Date_Debut et Date_Fin). Le résultat de ma requête me retourne une page blanche même s'il y a des transactions dans la période. Voici ma requête. Qu'est-ce qui ne fonctionne pas?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Rqt_PO_A_Venir.Fournisseur, Rqt_PO_A_Venir.ponum, Rqt_PO_A_Venir.itemnum, Rqt_PO_A_Venir.description, Rqt_PO_A_Venir.DateCommande, Rqt_PO_A_Venir.DateFournisseur, Rqt_PO_A_Venir.DateRequise, Rqt_PO_A_Venir.DateReception, Rqt_PO_A_Venir.JrsRetard, Rqt_PO_A_Venir.manufacturer, Rqt_PO_A_Venir.shiptoattn, Rqt_PO_A_Venir.orderqty, Rqt_PO_A_Venir.orderunit, Rqt_PO_A_Venir.receivedqty, Rqt_PO_A_Venir.category, Rqt_PO_A_Venir.agreementponum, Rqt_PO_A_Venir.EMail, Rqt_PO_A_Venir.Livré, Rqt_PO_A_Venir.shipvia
    FROM Rqt_PO_A_Venir
    WHERE (((Rqt_PO_A_Venir.Fournisseur) Like [Forms]![Frm_Commande_A_Venir]![Fournisseur].[value]) AND ((Rqt_PO_A_Venir.DateRequise)=IIf([formulaires]![Frm_Commande_A_Venir].[Formulaire]![Temps_Affichage]=1,(Rqt_PO_A_Venir.DateRequise)>=[Formulaires]![Frm_Commande_A_Venir]![Rech_Date_Deb] And (Rqt_PO_A_Venir.DateRequise)<=[Formulaires]![Frm_Commande_A_Venir].[Formulaire]![Rech_Date_Fin],(Rqt_PO_A_Venir.DateRequise)>=#4/1/2013# And (Rqt_PO_A_Venir.DateRequise)<=#5/30/2013#)));
    Merci de m'aider!!!!

  2. #2
    Membre Expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Billets dans le blog
    1
    Par défaut
    salut,

    déjà sélectionne utilise la balise # dans l'interface pour générer une balise code...
    tu peux préciser code=sql dans la balise...

    ensuite tu peux nommer une table ce qui va drastiquement simplifier l'écriture, va donner ça:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT r.Fournisseur, r.ponum, r.itemnum, r.description, r.DateCommande, r.DateFournisseur, r.DateRequise, r.DateReception, r.JrsRetard, r.manufacturer, r.shiptoattn, r.orderqty, r.orderunit, r.receivedqty, r.category, r.agreementponum, r.EMail, r.Livré, r.shipvia
    FROM Rqt_PO_A_Venir r
    WHERE (((r.Fournisseur) Like [Forms]![Frm_Commande_A_Venir]![Fournisseur].[value])
      AND ((r.DateRequise)=If([formulaires]![Frm_Commande_A_Venir].[Formulaire]![Temps_Affichage]=1,(r.DateRequise)>=[Formulaires]![Frm_Commande_A_Venir]![Rech_Date_Deb]
      And (r.DateRequise)<=[Formulaires]![Frm_Commande_A_Venir].[Formulaire]![Rech_Date_Fin],(r.DateRequise)>=#4/1/2013# And (r.DateRequise)<=#5/30/2013#)));
    maintenant ce qui va pas:
    • tu mélanges ce qui ressemble à du c# ou un truc du genre et le sql ce qui ne va bien sur pas...
    • les date en bd sont stockées en format américain et assimilable à du texte donc entre guillemets...

    moralité:
    • tu dois voir ta requête comme une chaine de caractères que tu vas concaténer avec les différents éléments, récupérés et éventuellement reformatés...
    • ensuite tu passes cette chaine à la méthode de la classe qui te connecte à mysql

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 4
    Par défaut Mauvaise rubrique
    Je suis désolé mais je me suis trompé de rubrique. Il s'agit en fait d'une requête SQL sous access 2012!

    Merci quand même!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Requête conditionnelle avec recherche entre 2 dates
    Par jorick2000 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 02/05/2013, 13h44
  2. recherche entre 2 dates
    Par avyrex dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/12/2006, 00h17
  3. recherche entre deux dates dans une requête
    Par emmanuel4945 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 29/11/2006, 21h42
  4. rechercher entre 2 dates
    Par iomega dans le forum Requêtes
    Réponses: 6
    Dernier message: 04/10/2006, 14h16
  5. Requête selection avec une variable de date
    Par kahmsin dans le forum Access
    Réponses: 7
    Dernier message: 20/11/2005, 19h38

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