[광주직업학교] 스마트인재개발원에서 배운 데이터베이스 - 복습2-7
ㅇ 본 수업은 "스마트인재개발원"에서 진행되었습니다.
#스마트인재개발원 #국비지원코딩교육 #데이터베이스 #실습문제 #11번~15번 #연산자 #웨어절 #오더바이절
<목차>
ㅇ 실습문제 11
ㅇ 실습문제 12
ㅇ 실습문제 13
ㅇ 실습문제 14
ㅇ DB 한 개 더 실행시켜서 desc 테이블 구조 띄워 넣고 보자.
ㅇ 어떤 상황에서 어떤 연산자를 사용할 지 잘 선택해야 해
- 사잇값을 찾을 때 -> BETWEEN
- 여러 개 값 찾을 때 -> IN
- 값이 없을 때 -> IS NULL
- 1개의 값을 찾을 때 -> 이큐연산자 (=)
ㅇ 결과가 no rows selected 나올 때
- 진짜 데이터가 없는 경우도 있지만 (실습 6번)
- 보통은 코드가 잘못됐다고 생각해야 해
- no rows selected 가 뜨면 코드가 잘못된 에러 사항이라고 간주하고 고민해 보아야 해
- 결과가 실행되는 게 중요한 게 아냐. 데이터에 대한 분석이 중요해
ㅇ 실습문제 11
SELECT last_name FROM employees WHERE last_name LIKE '___a%'
- '_ _ _ a' : 이름이 4글자인데 네번째가 a인 사람만 찾은 게 돼
- % 문장 전체를 의미
_ 문자 하나를 의미 - %와 _는 like 안에서만 허용
ㅇ 실습문제 12
SELECT last_name FROM employees WHERE last_name LIKE '%a%' AND last_name LIKE '%e%'
- AND나 OR 연산자로 조건 추가할 때는 반드시 새로운 조건식으로 추가해야 해
- last_name LIKE '%a%' AND '%e%' (X)
- last_name LIKE '%a%' AND LIKE '%e%' (X)
- '%a%e%' : 순서가 a, e인 애들만 나와. e가 앞인 애들은 찾을 수 없어
ㅇ 실습문제 13
SELECT last_name, salary, job_id FROM employees WHERE salary NOT IN (2500, 3500, 7000) AND job_id IN ('SA_REP', 'ST_CLERK')
ㅇ 실습문제 14
SELECT DISTINCT job_id FROM employees WHERE department_id in (30, 90) ORDER BY job_id
- 포함이라는 의미 : 90번 부서 또한 유일한 값으로 출력하라
- 유일하다 = 중복이 없다. =>DISTINCT
- 90번을 포함하는 과정은 하나의 연산자(IN)로 처리하기 (and나 or쓰지 말고)
ㅇ 실습문제 15
SELECT E.EMPLOYEE_ID, E. LAST_NAME, D.DEPARTMENT_NAME, D.DEPARTMENT_ID FROM EMPLOYEES E, DEPARTMENTS D WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID;
- 사원 이름은 테이블에 e테이블, 부서 이름 및 부서번호는 d 테이블 => 조인
- e.id는 확인 차 적어 주심
- 조인조건의 99%는 PK=FK
Author And Source
이 문제에 관하여([광주직업학교] 스마트인재개발원에서 배운 데이터베이스 - 복습2-7), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@data_sy/blogsupporters2-7저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)