souci avec une requête

souci avec une requête - SQL/NoSQL - Programmation

Marsh Posté le 10-03-2004 à 13:01:25    

salut, jai un souci avec une requête,  
je dispose des tables suivantes :
 
Employé (NumEmpl, Nom, Prénom, Niveau technique, dateNaiss)
Poste (Numposte, libelléposte, Technicité, NumType#)
Occuper (Numempl#, NumPoste#)
type (NumType, LibelléType)
 
je travaille sous access :
 
Je dois donner la liste des employés sur-qualifiés (ils ont un niveau technique supérieur d'au moins 2 points à la technicité du poste qu'ils occupent).
 
Merci d'avance de votre aide !!

Reply

Marsh Posté le 10-03-2004 à 13:01:25   

Reply

Marsh Posté le 10-03-2004 à 13:17:41    

Un truc comme ça ...
 
select e.NumEmpl, e.Nom, e.Prénom
from employé e  
inner join Occuper  o on  
  e.numempl = o.numempl#
inner join poste  p on  
  p.numposte = o.numposte#
where (e.[Niveau technique] + 2) > p.Technicité

Reply

Marsh Posté le 10-03-2004 à 14:17:44    

Je te remercie de ta réponse, le problème est que je n'ai pas encore appris les inner join, je travaille sous access, puis je me passer des inner join en utilisant la clause where ??

Reply

Marsh Posté le 10-03-2004 à 14:34:05    

select e.NumEmpl, e.Nom, e.Prénom  
from employé,poste,occuper
where e.Numempl = o.Numempl# and  
p.NumPoste = o.NumPoste# and
(e.[Niveau technique] + 2) > p.Technicité
 
Sans aucune certitude a verifier

Reply

Marsh Posté le 10-03-2004 à 16:38:14    

la requête ne fonctionne pas avec les # de Numempl et de Numposte, un message d'erreur saffiche, en revanche elle fonctionne sans les #, mais vu que je ne dispose pas de ces tables sous access, car c'est un exo sur feuille, je n'ai pas moyen de vérifier ! Puis je me passer alors des # ?

Reply

Marsh Posté le 10-03-2004 à 16:43:45    

En fait les # servaient sans doute d'indicateur visuel
pour tes champs comme quoi ce sont des clès étrangères...  
 
Dans ce cas  
tu peux t'en passer !
 
Ce qui intervient au niveau des jointures  
c le nom exact des champs ... de tes tables

Reply

Marsh Posté le 10-03-2004 à 18:08:02    

merci beaucoup pour vos réponses et vos explications !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed