2016-10-18 5 views
-2

가입 알아낼 수 없습니다 : 열이오라클 SQL, 왼쪽은 내가 2 개 테이블이

Person 테이블을 person_id

Employeeemp_type = full 또는

part 열이있는 테이블에 내가 반환하는 쿼리가 필요합니다 Person의 모든 직원을 제외하고는 정규직을 제외합니다. 내가 고민하고있는 것은 모든 사람이 반드시 테이블에 Employee입니다.

누군가 나를 도울 수 있습니까? 감사!

+1

실제 테이블 구조와 이상적인 샘플 데이터를 보여주십시오. –

+0

@Kritner 그것은 OP가 실제 테이블 구조 나 데이터를 게시하지 않았기 때문에 직원이 단 하나의 지정 만 가질 수 있다고 가정합니다. –

+1

@TimBiegeleisen 그래, 그 이유는 내가 단 한 마디 : – Kritner

답변

0

아래 코드를 시도해 볼 수는 있지만 테이블 구조가 아니기 때문에 여기서 무엇을 의미하는지 짐작할 수 있습니다.

select * 
from person p 
left join employee e on p.person_id = e.person_id 
where p.emp_type <> 'full' 
0

전체 쿼리 또는 테이블 구조 정보를 게시하지 않았으므로 조정해야합니다. 그러나 not exists 절을 사용하는 것이 아마도 가장 직접적인 방법 일 것입니다.

select p.* 
    from person p 
where not exists (select null 
        from employee e 
        where e.person_id = p.person_id 
         and e.emp_type = 'full')