[Access 2003]Affichage 2 requêtes SQL en une

Résolu
CaPiT Messages postés 622 Statut Membre -  
CaPiT Messages postés 622 Statut Membre -
Bonjour, je vous expose mon problème.
J'ai deux requête SQL que j'aimerais afficher dans une seule requête.

SELECT nego_travaux.nego_travaux, commande.nom_site, commande.code_site, commande.n_commande, commande.montant_commande, nature_commande.nature_commande, annee.année, mois.mois, [montant_commande]*([pourcent_acompte]/100) AS acompte
FROM nego_travaux INNER JOIN (nature_commande INNER JOIN (mois INNER JOIN (annee INNER JOIN commande ON annee.n_annee = commande.n_annee_acompte) ON mois.n_mois = commande.n_mois_acompte) ON nature_commande.n_nature_commande = commande.n_nature_commande) ON nego_travaux.n_nego_travaux = commande.n_nego_travaux
WHERE (((annee.n_annee)=[Formulaires]![Choix Date]![ChoixAnnee]) AND ((mois.n_mois)=[Formulaires]![Choix Date]![ChoixMois]));


Et:

SELECT nego_travaux.nego_travaux, commande.nom_site, commande.code_site, commande.n_commande, commande.montant_commande, nature_commande.nature_commande, annee.année, mois.mois, (([recollement]*(([pourcent_solde])/100))-[penalite]) AS solde
FROM nego_travaux INNER JOIN (nature_commande INNER JOIN (mois INNER JOIN (annee INNER JOIN commande ON annee.n_annee = commande.n_annee_solde) ON mois.n_mois = commande.n_mois_solde) ON nature_commande.n_nature_commande = commande.n_nature_commande) ON nego_travaux.n_nego_travaux = commande.n_nego_travaux
WHERE (((annee.n_annee)=[Formulaires]![Choix Date]![ChoixAnnee]) AND ((mois.n_mois)=[Formulaires]![Choix Date]![ChoixMois]));


Le but étant d'afficher les résultats des deux requêtes dans la même. Merci pour votre aide !

1 réponse

  1. CaPiT Messages postés 622 Statut Membre 51
     
    J'ai trouvé tout seul. Ca s'appelle une requête UNION:

    SELECT nego_travaux.nego_travaux,nego_travaux.n_nego_travaux, commande.nom_site, commande.code_site, commande.n_commande, commande.montant_commande, nature_commande.nature_commande, annee.année, mois.mois, [montant_commande]*([pourcent_acompte]/100) AS acompte
    FROM nego_travaux INNER JOIN (nature_commande INNER JOIN (mois INNER JOIN (annee INNER JOIN commande ON annee.n_annee = commande.n_annee_acompte) ON mois.n_mois = commande.n_mois_acompte) ON nature_commande.n_nature_commande = commande.n_nature_commande) ON nego_travaux.n_nego_travaux = commande.n_nego_travaux
    WHERE (((annee.n_annee)=[Formulaires]![Choix Date]![ChoixAnnee]) AND ((mois.n_mois)=[Formulaires]![Choix Date]![ChoixMois]))
    UNION 
    SELECT nego_travaux.nego_travaux, nego_travaux.n_nego_travaux,commande.nom_site, commande.code_site, commande.n_commande, commande.montant_commande, nature_commande.nature_commande, annee.année, mois.mois, (([recollement]*(([pourcent_solde])/100))-[penalite]) AS solde
    FROM nego_travaux INNER JOIN (nature_commande INNER JOIN (mois INNER JOIN (annee INNER JOIN commande ON annee.n_annee = commande.n_annee_solde) ON mois.n_mois = commande.n_mois_solde) ON nature_commande.n_nature_commande = commande.n_nature_commande) ON nego_travaux.n_nego_travaux = commande.n_nego_travaux
    WHERE (((annee.n_annee)=[Formulaires]![Choix Date]![ChoixAnnee]) AND ((mois.n_mois)=[Formulaires]![Choix Date]![ChoixMois]));


    Problème résolu ;)
    0