Partage
  • Partager sur Facebook
  • Partager sur Twitter

Récupérer un utilisateur et sa dernière commande.

    25 novembre 2010 à 18:22:27

    Bonjour à tous

    J'ai un peu de difficulté quand à l'élaboration d'une requête :/

    Je me permet donc de vous demander un peu d'aide :)

    Voilà, j'ai deux tables,

    Table : User
    - Id
    - Nom
    - Prenom

    Table : Commande
    - UserId
    - Produit
    - Prix
    - Date

    Comme vous pouvez vous en douté, un utilisateur peut avoir plusieurs commande.

    Ce que j’essaie de faire c'est une requête qui récupère un certain User (via son id) et lui associe sa dernière commande (basé sur la date).

    Merci d'avance :)

    Balzard
    • Partager sur Facebook
    • Partager sur Twitter
      25 novembre 2010 à 18:43:05

      Bonjour,

      Pour cela il faudrait utiliser une jointure SQL.
      M@théo21 en parle ;)
      • Partager sur Facebook
      • Partager sur Twitter
      Développeur web PHP - #Symfony2 - tcardonne.fr
        25 novembre 2010 à 21:14:05

        Il faut faire une jointure à cause que MySQL ne connait pas les fonctions analytiques, sinon, ce n'est pas nécessaire. Mais bon, dans ce cas-ci, il faut bien joindre à tes tables une sous-requête :

        --
            SELECT U.Id, U.Nom, C.Produit, C.Prix, C.Date
              FROM User U
        INNER JOIN Commande C1
                ON U.Id = C1.UserId
        INNER JOIN (SELECT UserID, MAX(Date) AS maxDate
                    FROM Commande
                    GROUP BY UserID) C2
                ON C2.UserId = C1.UserId
               AND C2.maxDate = C1.maxDate;
        
        • Partager sur Facebook
        • Partager sur Twitter

        Récupérer un utilisateur et sa dernière commande.

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown