Bonjour ou bonsoir à tous!!
Comment faire un seule requête pour trouver le MAX de "N°" dans le MAX de "Année", soit (le N°64).
Merci!!
Année N°
2004 63
2004 64
2004 65
2006 61
2006 62
2006 63
2006 64
Bonjour ou bonsoir à tous!!
Comment faire un seule requête pour trouver le MAX de "N°" dans le MAX de "Année", soit (le N°64).
Merci!!
Année N°
2004 63
2004 64
2004 65
2006 61
2006 62
2006 63
2006 64
en utilisant une sous-requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT MAX( numero) FROM ta_table WHERE annee = (SELECT MAX(annee) FROM ta_table)
On peut utiliser l'order by, non ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT MAX (numero) FROM table ORDER BY annee DESC
Si votre SGBDR accepte une clause de limitation des lignes, vous pouvez faire :
A +
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT TOP 1 numero FROM MaTable ORDER BY Annee DESC, numero DESC
Envoyé par MindiellDans cet exemple on devrait avoir 62 car l'année max est 2005.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 10g SOC5> select * 2 from dvp; ANNEE NUMERO ---------- ---------- 2004 63 2004 64 2005 62 3 ligne(s) sélectionnée(s). 10g SOC5> select max(numero) 2 from dvp 3 order by annee desc; MAX(NUMERO) ----------- 64 1 ligne sélectionnée.
Merci pour tout!!!!
çà marche!!!!
En effet, j'ai oublié de mettre l'année :Envoyé par Magnus
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT annee, MAX (numero) FROM TABLE GROUP BY annee ORDER BY annee DESC
L'année commence difficilement pour certain(e)sEnvoyé par Mindiell
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 10g SOC5> select * 2 from dvp; ANNEE NUMERO ---------- ---------- 2005 78 2006 75 2006 77 3 ligne(s) sélectionnée(s). 10g SOC5> select annee, max(numero) 2 from dvp 3 group by annee 4 order by annee desc; ANNEE MAX(NUMERO) ---------- ----------- 2006 77 2005 78 2 ligne(s) sélectionnée(s).
Bah, je croyais qu'il voulait le max de chaque année... J'aurais mal compris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT ANNEE , MAX(NUMERO) FROM MA_TABLE WHERE 1 GROUP BY ANNEE ORDER BY ANNEE DESC LIMIT 0 , 1
Partager