Tom's Guide > Forum > Programmation > [Résolu] Requête SQL

[Résolu] Requête SQL

Forum Programmation : [Résolu] Requête SQL

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour,

Je cherche à réaliser une requête avec Access mais je n'y arrive pas

Ci joint ma table:
http://img149.imageshack.us/img149/9818/sanstitrekmb.th.jpg

Je cherche a avoir le nom de tous les employés gagnant plus que tous ceux du service 30

J'ai fait ça :

SELECT Employes.NomEmp, Employes.SalaireEmp, Employes.ServiceEmp,
MAX (Employes.SalaireEmp) AS SalaireMax
FROM Employes
WHERE ((Employes.ServiceEmp)=30);

et ça :

SELECT Employes.NomEmp, Employes.SalaireEmp, [Employes_1].[Expr1] AS SalaireMax, Employes_1.ServiceEmp
FROM Employes, Employes AS Employes_1
WHERE ((Employes.SalaireEmp)>[SalaireMax]) AND (([Employes_1].[Expr1])=Max([Employes_1].[SalaireEmp]) AND ((Employes_1.ServiceEmp)=30));


Ce que j'essaye de faire c'est avoir une liste du service 30, sortir la valeur max et ensuite la comparer au reste de la table mais pour l'instant ça marche pas trop

Merci
Djipss


Message édité par djipss le 25-03-2009 à 17:50:14
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Salut, Djipss

Tu peux faire cela en deux requêtes comme tu as essayé de le faire :
=> 1ère requête (nommée MaxService30) :
SELECT MAX (Employes.SalaireEmp) AS SalaireMax
FROM Employes
WHERE ((Employes.ServiceEmp)=30)

=> 2ème requête utilisant la 1ère :
SELECT Employes.NomEmp, Employes.SalaireEmp, Employes.ServiceEmp
FROM Employes, MaxService30
WHERE ((Employes.SalaireEmp)>MaxService30.SalaireMax)

En utilisant les fonctions de regroupement de domaine, tu peux même te passer de la 1ère requête :
SELECT Employes.NomEmp, Employes.SalaireEmp, Employes.ServiceEmp
FROM Employes
WHERE ((Employes.SalaireEmp)>DMax("SalaireEmp","Employes","ServiceEmp
=30" ))

Bonne continuation

Répondre à gillou_gre

Merci pour ta réponse

J'avais essayé avec la fonction Dmax mais je n'ai pas réussi à l'utiliser correctement.
Quand je vois ce que tu as fait, je me suis compliqué la vie :)

Répondre à djipss
Tom's Guide > Forum > Programmation > [Résolu] Requête SQL
Aller à :

Il y a 2299 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens