Création
d'entreprise
Posez votre question Signaler

Le max en SQL ?? [Résolu]

mabouze 39Messages postés 10 avril 2002Date d'inscription - Dernière réponse le 20 juin 2009 à 01:47
dans une clause WHERE : kel est l'instruction a taper pour selectionner le max d'une colonne
moi g mis :

SQL = "SELECT * FROM matable"
SQL = SQL & "WHERE (ANNEE=MAX(ANNEE))"

mais ca marche pas!
Lire la suite 

Le max en SQL »

11 réponses
Réponse
+5
moins plus
select Max (Mon_id) from Ma_table
Ajouter un commentaire
Réponse
+2
moins plus
ANNEE c'es t koi, une variable, une table, le champ d'une table....?


Si les date sont stockées dans une table il faut, a mon avis, que tu fasses un Select imbriqué pour recuperer le max de la date dans laquelle elle est stockée.
SQL = "SELECT * FROM matable"
SQL = SQL & "WHERE (SELECT max(annee) FROM TABLE_CONTENANT_LES_ANNEE)"

si c'est une variable, tu dois pouvoir recuperer la date courante, extraire l'année et la concaténet à ta requete SQL

SQL = "SELECT * FROM interessement_Dough "
SQL = SQL & "WHERE ANNEE="
SQL = SQL & (String)variable_année (la sytaxe est approximative car c du vb on dirait mas je connais pas vraiment la syntaxe...)

en esperant avoir ete assez clair

Kevin
Ajouter un commentaire
Réponse
+1
moins plus
je ne comprend pas trop ce que tu cherches à faire avec :
ANNEE=MAX(ANNEE)
mais la synthaxe est bonne.

Par contre tu fais une concaténation, et il serait bon que tu rajoutes un espace avant le WHERE ou après le nom de ta table.

Peguinette...
"Petit à petit on devient moins petit."
teebo- 4 juin 2002 à 14:52
Peace! ;-)
Teebo est arrive! ;-)))))
SELECT * from table WHERE champ=(SELECT MAX(champ FROM table);
Tu remplaces champs et table et tu coupes ou tu veux, mais ca ca doit marcher theoriquement!!!
.  .
\_/
teebomabouze - 4 juin 2002 à 14:53
Peace! ;-)
Teebo est arrive! ;-)))))
SELECT * from table WHERE champ=(SELECT MAX(champ) FROM table);
J'avais oublie une parenthese, c'est mieux comme ca... ;-)

HE LES MODOS; C'EST PAS UN DOUBLON!!!! ;-PPPP
.  .
\_/
Peguinettemabouze - 5 juin 2002 à 18:00
Si tu poses ton problème en montrant simplement ta solution qui ne marche pas, il y a de grandes chances pour que les autres ne comprennent pas le raisonnement qui t'a amené là.

Il est donc souvent préférable d'expliquer ce que tu cherches à faire, puis la solution que tu as imaginée (et qui en l'occurence ne marche pas).

Car dans ton cas, il ne faut pas faire un MAX, la démarche n'est pas logique et impropre. Il est préférable que tu récupères (dans le lagage que tu utilises) l'année courante et qu'ensuite tu mettes dans ta close WHERE :
WHERE CHAMP_ANNEE = annee_courante;

Capice ?
LOL!

Peguinette...
"Petit à petit on devient moins petit."
Ajouter un commentaire
Réponse
+1
moins plus
une amie ma donnée une solution au cas ou ca tinteresseré

SQL = "SELECT * FROM interessement_Dough "
SQL = SQL & "WHERE ANNEE="&year(date)
Ajouter un commentaire
Réponse
+1
moins plus
bonjour
est ce que possible de faire le max sur une ligne
et merci
Ajouter un commentaire
Ce document intitulé « le max en SQL ?? » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?