Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[mysql] select trop bavard

18 réponses
Avatar
Stan
Bonjour,

La requette suivante :

select max(date_debut), eleve, classe
from VPN_histo
group by eleve, classe

me retourne les bonnes informations,
mais je ne souhaite pas voir max(date_debut)
dans le resultat.

Comment faire ?
Merci.

--
-Stan

10 réponses

1 2
Avatar
Pif
Si dans voir c'est le titre de la colonne :

select max(date_debut) as " ", eleve as "Nom Eleve", classe
from VPN_histo
group by eleve, classe ;


Stan a écrit :
Bonjour,

La requette suivante :

select max(date_debut), eleve, classe
from VPN_histo
group by eleve, classe

me retourne les bonnes informations,
mais je ne souhaite pas voir max(date_debut)
dans le resultat.

Comment faire ?
Merci.

--
-Stan


Avatar
ALain Montfranc
Stan a écrit
Bonjour,

La requette suivante :

select max(date_debut), eleve, classe
from VPN_histo
group by eleve, classe

me retourne les bonnes informations,
mais je ne souhaite pas voir max(date_debut)
dans le resultat.




Ben pourquoi tu le demandes alors ? ;-)

select distinct eleve, classe from VPN_histo

suffit...
Avatar
Stan
"ALain Montfranc" a écrit dans le message de
news:
Stan a écrit
> Bonjour,
>
> La requette suivante :
>
> select max(date_debut), eleve, classe
> from VPN_histo
> group by eleve, classe
>
> me retourne les bonnes informations,
> mais je ne souhaite pas voir max(date_debut)
> dans le resultat.


Ben pourquoi tu le demandes alors ? ;-)



Parce que c'est un critère dans la selection;
je souhaite récupérer le couple eleve,classe de la date la plus récente...
Mais cette date m'importe peu.

--
-Stan
Avatar
ALain Montfranc
Stan a écrit
"ALain Montfranc" a écrit dans le message de
news:
Stan a écrit
Bonjour,

La requette suivante :

select max(date_debut), eleve, classe
from VPN_histo
group by eleve, classe

me retourne les bonnes informations,
mais je ne souhaite pas voir max(date_debut)
dans le resultat.




Ben pourquoi tu le demandes alors ? ;-)



Parce que c'est un critère dans la selection;



Quelle selection ? Tu as omis la WHERE clause de ta requete dans ton
messagez initial ?

je souhaite récupérer le couple eleve,classe de la date la plus récente...



Tu veux le dernier connecté ?

auquel cas un "order by date_debut limit 1" suffit

Mais cette date m'importe peu.



Peux tu etre plus clair dans ton expression de besoin ?
Avatar
ALain Montfranc
(supersedes )

Stan a écrit
"ALain Montfranc" a écrit dans le message de
news:
Stan a écrit
Bonjour,

La requette suivante :

select max(date_debut), eleve, classe
from VPN_histo
group by eleve, classe

me retourne les bonnes informations,
mais je ne souhaite pas voir max(date_debut)
dans le resultat.




Ben pourquoi tu le demandes alors ? ;-)



Parce que c'est un critère dans la selection;



Quelle selection ? Tu as omis la WHERE clause de ta requete dans ton
messagez initial ?

je souhaite récupérer le couple eleve,classe de la date la plus récente...



Tu veux le dernier connecté ?

auquel cas un "order by date_debut desc limit 1" suffit

Mais cette date m'importe peu.



Peux tu etre plus clair dans ton expression de besoin ?
Avatar
Stan
"ALain Montfranc" a écrit dans le message de
news:
(supersedes )

Stan a écrit
> "ALain Montfranc" a écrit dans le message de
> news:
>> Stan a écrit
>>> Bonjour,
>>>
>>> La requette suivante :
>>>
>>> select max(date_debut), eleve, classe
>>> from VPN_histo
>>> group by eleve, classe
>>>
>>> me retourne les bonnes informations,
>>> mais je ne souhaite pas voir max(date_debut)
>>> dans le resultat.
>>
>>
>> Ben pourquoi tu le demandes alors ? ;-)
>
> Parce que c'est un critère dans la selection;

Quelle selection ? Tu as omis la WHERE clause de ta requete dans ton
messagez initial ?

> je souhaite récupérer le couple eleve,classe de la date la plus


récente...

Tu veux le dernier connecté ?

auquel cas un "order by date_debut desc limit 1" suffit

> Mais cette date m'importe peu.

Peux tu etre plus clair dans ton expression de besoin ?




La requette que j'ai mentionnée initialement
me renvoie bien un résultat correct :
j'obtiens une liste des eleves , classe avec la date
la plus récente.
J'aimerai utiliser une requette qui ne me
renvoie pas le MAX(date_debut) dans le résultat, bien que
ce soit le critère "d'extraction".

Fonctionnellement ça correspond à la solution de Pif,
mais je pense qu'il y une syntaxe plus 'propre' pour y parvenir.

--
-Stan
Avatar
ALain Montfranc
Stan a écrit

La requette que j'ai mentionnée initialement
me renvoie bien un résultat correct :
j'obtiens une liste des eleves , classe avec la date
la plus récente.



ok

J'aimerai utiliser une requette qui ne me
renvoie pas le MAX(date_debut) dans le résultat, bien que
ce soit le critère "d'extraction".



Tu parles de la valeur ou juste du nom de la colonne là ?


Fonctionnellement ça correspond à la solution de Pif,
mais je pense qu'il y une syntaxe plus 'propre' pour y parvenir.



Si le probleme est juste l'intitulé de la colonne (et où est le
probleme ???), la syntaxe de Pif est parfaitement propre
Avatar
Pif
select eleve, classe
from VPN_histo
group by eleve, classe
order by max(date_debut)
Avatar
Stan
"Pif" a écrit dans le message de
news:epn95j$5m4$
select eleve, classe
from VPN_histo
group by eleve, classe
order by max(date_debut)




Es-tu sûr de toi ? :-)

--
-Stan
Avatar
Pif
si j'ai bien compris :

select eleve, classe --> tu veux voir les élèves et classes
from VPN_histo --> depuis cette relation

group by eleve, classe --> tu veux aggreger par élève et classe ?
sinon, ce serait plutot GROUP BY CLASSE, ELEVE

order by max(date_debut) --> tu veux trier pour chaque élève prendre la
valeur maximum des champs "date_debut" qui sont agrégés et trier var
valeur croissante ...

Du coup tu as :
pour chaque classe (par valeur croissante) la liste de tous les élèves
par ordre croissant de "max(date_debut)

c'est pas ca ?

Stan a écrit :
Es-tu sûr de toi ? :-)
1 2