2017-11-03 1 views
0

에서 직원의 감독자의 이름을 표시하려고하는 것은 내가 McLester의 관리자 이름을 표시해야 내 데이터베이스하나의 테이블 여기

Drop Table Staff; 

Create Table Staff 
(StaffNo varchar(6) Primary Key, 
Lastname varchar(30), 
Firstname varchar(25), 
Hire_date date, 
Location varchar(30), 
SupervisorNo varchar(6), 
Salary numeric(8,2), 
Commission numeric(4,2)); 

-- Populate Staff Table ------------------------------------------ 

Insert Into Staff 
Values('000001','Zambini','Rick',Date('1980-2-15'),'LOS 
ANGELES','000000',6000.00,5.00); 
Insert Into Staff 
Values('000003','Vidoni','Cheryl',Date('1980-3-6'),'NEW 
YORK','000000',5780.00,5.00); 
Insert Into Staff 
Values('000004','Coudray','Sandy',Date('1980-6-6'),'LOS 
ANGELES','000001',6237.00,5.00); 
Insert Into Staff 
Values('000006','Thomas','Pat',Date('1991-1-8'),'NEW 
YORK','000003',5875.00,5.00); 
Insert Into Staff 
Values('000008','McLester','Debbie',Date('1981-4-12'),'LOS 
ANGELES','000001',4792.00,5.00); 
Insert Into Staff 
Values('000011','Michaels','Delores',Date('1982-5- 
5'),'CHICAGO','000012',4927.00,7.00); 
Insert Into Staff 
Values('000012','Charles','Ted',Date('1983-2- 
2'),'CHICAGO','000000',5945.00,5.00); 
Insert Into Staff 
Values('000013','Marin','Mark',Date('1983-6-5'),'LOS 
ANGELES','000001',4802.00,11.00); 
Insert Into Staff 
Values('000015','Roddick','Mary',Date('1984-2-13'),'NEW 
YORK','000003',5493.00,8.00); 
Insert Into Staff 
Values('000016','Long','Nicole',Date('1984-8-18'),'NEW 
YORK','000003',5190.00,7.00); 
Insert Into Staff 
Values('000019','Rolfes','Chuck',Date('1984-9-9'),'LOS 
ANGELES','000001',4586.00,6.00); 
Insert Into Staff 
Values('000020','Sanders','Kathy',Date('1985-3- 
23'),'CHICAGO','000012',3783.00,5.00); 

COMMIT; 

입니다하지만 난에 supervisorNo의 상관 관계를 할 수있는 방법을 찾을 수 없습니다 성

이 하나 나를 정말이 하나 개의 테이블이기 때문에 가입 할 어차피 내가 데이터에 대한 답을 보지 않고 LASTNAME 값 supervisorno을 연결하는 방법을 찾을 수 없습니다

난처한 상황에 빠진이

select * 
from staff 
where supervisorno in (select supervisorno from staff) and lastname = 
'mclester'; 

내 쿼리 지금까지

+0

'McLester'는 감독관입니까? –

+0

잠시 동안 죄송합니다. 뇌가 부드러워졌습니다. McLester의 감독자 이름 –

답변

0

합니까 SELECT * FROM staff where staffno = (SELECT supervisorno FROM staff WHERE lastname = 'mclester'); 일처럼 뭔가?

나는 그것이 꽤 아니지만 그것이 효과가 있다고 생각합니다.

+0

을 찾아야합니다. 완벽하게 작동했습니다. 덕분에 저는 이걸로 머리를 쓰고있었습니다. 아, 나는 staffno를 supervisorno와 일치시키는 것이 데이터 연결에 도움이되는지 알지 못해서 멈추고있는 것을보고있다. –

0
select * from staff where StaffNo IN (select SupervisorNo from staff where Lastname = 'McLester');