Select sur des enregistrement where date = max

Résolu
zincolove Messages postés 2 Date d'inscription vendredi 18 février 2011 Statut Membre Dernière intervention 3 mars 2011 - 28 févr. 2011 à 11:53
ed73 Messages postés 276 Date d'inscription lundi 8 septembre 2008 Statut Membre Dernière intervention 15 avril 2013 - 3 mars 2011 à 14:20
bonjour
bon voila j'ai un problème :)
supposant que ma table est la suivante :

nom prenom adresse date_v
-------------------------------------------------
xxx xxxxxx xxxxxxxxx 04/02/2011
xxx xxxxxx xxxxxxxxx 05/02/2011
xxx xxxxxx xxxxxxxxx 06/02/2011
xxx xxxxxx xxxxxxxxx 20/02/2011
xxx xxxxxx xxxxxxxxx 20/02/2011
xxx xxxxxx xxxxxxxxx 20/02/2011

je veux faire un select des ligne où la date est max ,

plz help :(
A voir également:

3 réponses

ed73 Messages postés 276 Date d'inscription lundi 8 septembre 2008 Statut Membre Dernière intervention 15 avril 2013 2
28 févr. 2011 à 17:36
Bonjour

select * from MaTable where date_v = (select max(date_v) from MaTable)
3
zincolove Messages postés 2 Date d'inscription vendredi 18 février 2011 Statut Membre Dernière intervention 3 mars 2011
3 mars 2011 à 13:30
bonjour

votre réponse est très bonne merci

mais si date_v est déclarer comme chaine de caractère au lieu de date hummm

le max(date_v) ne donnera pas de résultat .
on peut faire une conversion de type ? du genre max(convert ........) ?
0
ed73 Messages postés 276 Date d'inscription lundi 8 septembre 2008 Statut Membre Dernière intervention 15 avril 2013 2
3 mars 2011 à 14:20
Bonjour,

Ce n'est pas une très bonne idée de déclarer la date en tant que chaîne de caractères pour des raisons d'indexation et de représentation de la date selon les différents pays.

Mais si vous n'avez pas le choix, il reste possible de convertir la chaîne en date, la fonction de conversion dépendra de votre SGBD (sql server, sybase, oracle, etc...). Les performances seront moindres que si vous aviez un champ de type date ou datetime.
0
Rejoignez-nous