sql obtenir ligne avec max date et relative de l'enregistrement de l'id

J'essaie de faire une requête simple, passé sur un ton des heures et rien....
Tout ce que je besoin est d'obtenir un MAX de la date et de tous est champs correspondants.

Je vais expliquer:
J'ai une table avec ce champs: BasketID, OrderStatusTypeID, StatusDate.
J'essaie d'obtenir qu'un seul enregistrement qui contiennent OrderStatusTypeID valeur avec la dernière StatusDate.

C'est les données

BasketID    OrderStatusTypeID   date
1111        13              2013-04-01 11:38:31
1111        26              2013-04-04 17:44:17
1111        39              2013-04-02 12:35:07
1111        40              2013-04-08 12:52:55

C'est ma requête:

SELECT BasketID, OrderStatusTypeID, max(StatusDate) date
FROM st
where BasketID=1111
group by BasketID

C'est les résultats que j'ai besoin

BasketID    OrderStatusTypeID   date
63558       40          2013-04-08 12:52:55

Pour une raison que je ne reçois OrderStatusTypeID = 13 et pas 40!
(max de StatusDate, et PAS max de OrderStatusTypeID).
Pourquoi???

BasketID    OrderStatusTypeID   date
63558       13                   2013-04-08 12:52:55

Merci pour la réponse rapide!

Votre requête n'a même pas compiler. Quel est votre SGBD?
Je pense que vous pouvez le faire par SELECT TOP 1 * From Table ORDER BY date DESC
choisissez la réponse correcte s'il vous plaît... il permettra à d'autres aussi

OriginalL'auteur user2261793 | 2013-04-09