Q0. 이름이 ‘John B.Smith’인 사원들의 생년월일(Bdate)과 주소(Address)를 검색하라.

SELECT Bdata, Adress

From EMPLOYEE

WHERE Fname = ‘John’ AND Mini = ‘B’ AND Lname = ‘Smith’;

 

Q1. ‘Research’ 부서에서 근무하는 모든 사원의 이름(Fname, Lname)과 주소(Adress)를 검색하라.

SELECT Fname, Lname, Address

FROM EMPLOYEE, DEPARTMENT

WHERE Dname=’Research’ AND Dnumber=Dno;

 

Q1'. Q1의 모호함을 없애기 위해 변경. 동일한 애트리뷰트 이름이 양쪽 릴레이션에서 사용되었 기 때문에 점(.)을 이용하여 릴레이션의 이름을 붙여준다.

SELECT Fname, EMPLOYEE Name, Address

FROM EMPLOYEE, DEPARTMENT

WHERE DEPARTMENT.Name = ‘Research’ AND DEPARTMENT.Dnumber=EMPLOYEE.Dnumber;

SELECT EMPLOYEE.Fname, EMPLOYEE.Name, EMPLOYEE.Address

FROM EMPLOYEE, DEPARTMENT

WHERE DEPARTMENT.DName=’Research’ AND DEPARTMENT.Dnumber=EMPLOYEE.Dno;

SELECT E.Fname, E.LName, E.Address

FROM EMPLOYEE E, DEPARTMENT D

WHERE D.DName=’Research’ AND D.Dnumber=E.Dno;

 

Q2. ‘Stafford’에 위치한 모든 프로젝트에 대해서 프로젝트 번호(Pnumber), 담당 부서 번호(Dnum), 부서관리자의 성(Lname), 주소(Addess), 생년월일(Bdate)을 검색하라.

SELECT Pnumber, Dnum, Lname, Address, Bdate

FROM PROJECT, DEPARTMENT, EMPLOYEE

WHERE Dnum=Dnumber And Mgr_ssn=Ssn And Plocation=’Stafford’;

 

Q3. 각 사원에 대해 사원의 이름(Fname)과 성(Lname), 직속 상사의 이름(Fname)과 성(Lname)을 검색하라.

SELECT E.Fname, E.Lname, S.Fname, S.Lname

FROM EMPLOYEE AS E, EMPLOYEE AS S

WHERE E.Super_ssn=S.Ssn;

 

Q4. EMPLOYEE의 모든 Ssn을 선택하라.

SELECT Ssn

FROM EMPLOYEE;

 

Q5. EMPLOYEE의 Ssn과 DEPARTMENT의 Dname의 모든 조합을 선택하라. (중복을 제거하지 않으면) 크로스 프로덕트가 된다)

SELECT Ssn, Dname

FROM EMPLOYEE, DEPARTMENT;

 

Q6. 부서 번호(Dno)가 5인 부서에서 근무하는 EMPLOYEE 투플들의 모든 애트리뷰트 값 검색.

SELECT *

FROM EMPLOYEE

WHERE Dno=5;

 

Q7. ‘Research’ 부서에서 일하는 모든 사원에 대하여 EMPLOYEE의 모든 애트리뷰트와 DEPARTMENT의 모든 애트리뷰트를 검색하라.

SELECT *

FROM EMPLOYEE, DEPARTMENT

WHERE Dname=’Research’ AND Dno=Dnumber;

 

글이나 공감 남겨주는 사람 착한사람

'학사 그리고 석사 > 데이터베이스' 카테고리의 다른 글

SQL 질의 (2)  (0) 2019.09.21
용어 정리  (0) 2019.09.21
다중키 인덱스  (0) 2019.09.20
단일-단계 순서 인덱스들의 유형  (0) 2019.09.20
파일의 인덱스 구조  (0) 2019.09.20

+ Recent posts