[access] souçis pour réalisé une requete

Bonjour,

Voiçi mon problème

Soit deux tables

1. Dossiers : iddossier, datedemande, nomdossier...

2. solution : idsolution, datesolution, typesolution, referentsolution

1 dossier peut avoir plusieurs solutions et les relations sont faites dans ce sens la.

Ce que je cherche a faire, sous la forme de requete sql

C'est d'obtenir un tableau ou j'ai, par dossier, la dernière solution trouvées.

Le souçi, c'est que je veux qu'il me donne la dernière solution basée sur le champ datesolution de la table solution et qu'il me mette sur la même ligne le reste des infos concernant cette enregistrement (typesolution, referentsolution).

J'espère que vous pourrez m'aider à avancer.

Merci beaucoup

Ptrck

4 réponses

  1. Contributeur
    salut :o)

    Il faudrait nous dire sur quel champs tu fais ta liaison.

    Partons du principe que dans Solution tu as IDDossier en clé étrangère, alors la requête aura cette tête là:

    SELECT MAX(datesolution) AS lastsolution, idsolution FROM solution WHERE datesolution=lastsolution GROUPBY IDDossier;

    Je crois...
    0
    1. J'ai bien IDDossier en clé étrangère dans ma table solution. merci
      0
    2. Contributeur
      Et ça ne marche pas?
      0
    3. @teeboCa ne fonctionne toujours pas

      Du coup il m'ouvre une fenêtre en me demandant "maxdate"
      0
  2. Salut !

    SELECT dossier.iddossier, nomdossier, MAX(datesolution)
    FROM dossier, solution
    WHERE dossier.iddossier = solution.iddossier
    GROUP BY dossier.iddossier, nomdossier;

    à tester... dis moi si ya une erreur
    0
    1. Désolé mais ça ne fonctionne pas. il me renvoi bien le nombr exact d'enregistrement mais il me remet sur toute les lignes la date de la dernière solution. donc j'ai 535 fois la même date.

      Ja cherche plutôt a avoir la dernière date de solution correspondant à chaque foyer.

      Merci quand même

      Ptrck
      0
    2. Contributeur
      SELECT dossier.iddossier, nomdossier, MAX(datesolution) AS maxdate
      FROM dossier, solution
      WHERE dossier.iddossier = solution.iddossier AND datesolution=maxdate
      GROUP BY dossier.iddossier, nomdossier;

      0
  3. ça ne marche pas, il manque un element dans la fonction d'agregat (me dit access)

    Merci

    Ptrck
    0
    1. tu utilises en fonction de regroupement dernier
      0