2016-12-01 1 views
0

스키마 가입 신청 방법 :자체가

학생 (snum : 정수, SNAME : CHAR (30), 주요 : CHAR (25), 레벨 : 문자 (2) 연령 : 정수)

학부

클래스 (cname : char (40), meets_at : char (20), room : char (10), fid : 정수) | fid REFS 입력 :

등록 (snum : 정수, char (40) | snum REFS student.snum, cname REFS class.name)

'JR'을 제외한 모든 레벨의 학생들의 레벨과 나이를 인쇄하고 싶습니다. . 나는이 쿼리를 간단한 방법으로 적용 할 수 있다는 것을 알고있다. 이것은 나에게 예상 답변을 제공하지 않습니다

select s.levels as Seniority,s.age as Age 

from student s 

where s.levels not in (

select a.levels 

from student a 

where a.levels='JR'); 

:하지만 우리에게 전자가

내 시도에 합류합니다. 내가 실수하고 있니?

+0

'가입'하지 않으시겠습니까? !! – wajeeh

+0

JUINS –

+0

처럼 이것을하고 싶습니다. 's.level, s.age from student s를 선택하십시오. s.level! ='JR'' ?? – wajeeh

답변

0

실제로 하위 쿼리를 수행하거나이 경우에는 가입하는 것과 같은 간단한 쿼리로 얻을 수는 있지만 어떤 의미가 없습니다.

SELECT level as Seniority, age as Age from student WHERE levels != 'JR' 

원하는 출력을 제공해야합니다.

+0

","모든 조인 연산자보다 덜 엄격하게 바인딩하는 "크로스 조인"의 대체 철자입니다. – philipxy

0

join이 과도 할 수 있다는 데 동의하지만 숙제처럼 보입니다.이 경우 구체적으로 join을 사용하도록 요청 받았을 수 있습니다. 내 시도는 다음과 같습니다.

select distinct levels as Seniority, age as Age 
    from student 
     natural join 
     (select * 
      from student a 
      where a.levels != 'JR');