Besoin d'aide SVP moyenne sql
vincent
-
vincent -
vincent -
Bonjour à tous,
J'ai un petit problème,en fait j'ai une table eleves qui contient les champs:nom,age,pratique(pratique d'un instrument de musique).Quand un elève pratique plusieurs instruments,cela apparait sur plusieurs lignes.
Je souhaite pouvoir afficher avec une requete sql la moyenne d'age des élèves mais sans compter les doublons.
Par exemple,si j'ai la table Eleves déclarée comme ça:
nom age pratique
albert 35 piano
albert 35 contrebasse
paul 18 cor
...
je dois prendre l'age 35 une seule fois dans mon calcul de ma moyenne.
La requete select(avg)from Eleves donne donc un résultat faux.
Pouvez vous m'aidez s'il vous plait?
Je vous remercie d'avance pour votre aide
J'ai un petit problème,en fait j'ai une table eleves qui contient les champs:nom,age,pratique(pratique d'un instrument de musique).Quand un elève pratique plusieurs instruments,cela apparait sur plusieurs lignes.
Je souhaite pouvoir afficher avec une requete sql la moyenne d'age des élèves mais sans compter les doublons.
Par exemple,si j'ai la table Eleves déclarée comme ça:
nom age pratique
albert 35 piano
albert 35 contrebasse
paul 18 cor
...
je dois prendre l'age 35 une seule fois dans mon calcul de ma moyenne.
La requete select(avg)from Eleves donne donc un résultat faux.
Pouvez vous m'aidez s'il vous plait?
Je vous remercie d'avance pour votre aide
A voir également:
- Besoin d'aide SVP moyenne sql
- Excel moyenne - Guide
- Moyenne en anglais excel - Guide
- Logiciel sql - Télécharger - Bases de données
- Moyenne heure excel ✓ - Forum Excel
- Requête sql pix - Forum Python
2 réponses
Ca y est j'ai réussi à trouver d'où venait le problème.
Par contre,est ce quelqu'un pourrait m'expliquer comment on fait des if then else dans une requete sql
je lis des cours sur le net mais je ne comprend pas trop.
Merci d'avance :-)
Par contre,est ce quelqu'un pourrait m'expliquer comment on fait des if then else dans une requete sql
je lis des cours sur le net mais je ne comprend pas trop.
Merci d'avance :-)
Salut,
Je pense qu'il aurait été sympa pour les futurs lecteurs interpellés par ton titre de donner la solution à ton problème
Pour ce qui est du if then else, je crois que ça se résout par du
CASE expr {WHEN expr THEN expr} ELSE expr END
ou du
CASE {WHEN prédicat THEN expr} ELSE expr END
mais je suis pas sûr que ce soit standard. Sous oracle, j'utilisais decode() mais peut-être CASE y est implémenté... je te laisse le tester
exemples :
Je pense qu'il aurait été sympa pour les futurs lecteurs interpellés par ton titre de donner la solution à ton problème
Pour ce qui est du if then else, je crois que ça se résout par du
CASE expr {WHEN expr THEN expr} ELSE expr END
ou du
CASE {WHEN prédicat THEN expr} ELSE expr END
mais je suis pas sûr que ce soit standard. Sous oracle, j'utilisais decode() mais peut-être CASE y est implémenté... je te laisse le tester
exemples :
select CASE gender WHEN 'MALE' THEN 'Mr' WHEN 'FEMALE' THEN 'Mrs' ELSE '*****' END || ' ' ||Firstame||', '||Initial||' '||LastName from ustomers where CUSTID = xxx select CASE WHEN AGE < 3 THEN 'Bébé' WHEN AGE < 13 THEN 'Enfant' WHEN AGE < 22 THEN 'Adolescent' WHEN AGE < 31 THEN 'Adulte' ELSE 'Vieillard' END tranche, count(1) from population group by CASE WHEN AGE < 3 THEN 'Bébé' WHEN AGE < 13 THEN 'Enfant' WHEN AGE < 22 THEN 'Adolescent' WHEN AGE < 31 THEN 'Adulte' ELSE 'Vieillard' END