-
SQL SELECT절과 FROM절back-end&DB/SQL(Oracle) 2023. 5. 2. 12:39728x90
- 주석 작성은 하이픈 두개!
- SQL 문장은 대소문자 구분 X
- 문자열은 대소문자 구분O -> '문자열'(작은따옴표)
- 띄어쓰기나 줄바꿈도 명령에 영향 X
- SQL 문장 끝맺음은 ; (세미클론으로 마무리)
- 실행 방법은 : Ctrl + Enter or F9
1. 전체 컬럼 출력하기
- * = 전체를 의미
- SELECT 출력하고 싶은 컬럼
- FROM 데이터를 가져올 테이블
1.1. 직원 테이블에 전체 데이터 출력하기SELECT * FROM employees;
1.2. 부서 테이블의 전체 데이터 출력
SELECT * FROM departments;
2. 원하는 칼럼만 출력하기
- 직원ID, 성
SELECT employee_id,LAST_name FROM employees;
2.2. 실습- 직원 테이블의 직원ID, 이름, 입사일 출력하기
SELECT employee_id, first_name,hire_date FROM employees;
- 부서 테이블에서 부서ID, 부서명, 근무지 출력하기
SELECT department_id, department_name,location_id FROM departments;
3. DISTINCT로 중복 제거- DISTINCT 중복제거 명령어, SELECT 뒤에 작성
SELECT DISTINCT DEPARTMENT_ID FROM employees;
3.1. 컬럼이 여러개의 경우 제거 하는 방법
- job id가 다르기 때문에 department id가 중복이라도 출력한다.SELECT DISTINCT job_id, DEPARTMENT_ID FROM employees;
3.2. 실습
- 직원 테이블에서 입사일 출력 후 행의 개수 확인SELECT hire_date FROM employees;
- 직원 테이블에서 입사일 중복 제거 출력 후 행위 개수 확인
SELECT DISTINCT hire_date FROM employees;
4. *(alias)사용 별칭 설정하기
- ALIAS
- 컬럼 별칭
- 컬럼 "별칭"
- 컬럼 AS 별칭
- 컬럼 AS "별칭"4.1. employees_ID 을 직원ID 바꾸기
SELECT employee_ID 직원ID FROM employees; SELECT employee_ID "직원ID1" FROM employees; SELECT employee_ID AS 직원ID2 FROM employees; SELECT employee_ID AS "직원 ID3" FROM employees;
- as 명령어 쓰는 것을 선호 -> 별칭을 한눈에 파악 할 수 있기 때문에!
- 별칭 ""을 쓰는 경우, JAVA의 문자열과 겹칠 수 있음 -> 작업의 효율성이 떨어짐
- ""를 쓰는 경우, 별칭에 띄어쓰기가 들어가는 등의 특수 사항이 있기 때문에4.2. 연산
- SALATY(월급)으로 연봉 계산하기
- 직원테이블에서 직원ID, 급여, 연봉을 출력하시오.
- 단, 급여 출력시 급여, 연봉 사용SELECT employee_ID, salary 급여, salary*12 연봉 FROM employees; SELECT employee_ID, salary "급여", salary*12 "연봉" FROM employees; SELECT employee_ID, salary as 급여, salary*12 as 연봉 FROM employees; SELECT employee_ID, salary as "급여", salary*12 as "연봉" FROM employees;
5. NULL
- NULL은 정해지지 않았거나 비어 있는 상태
- 숫자 0이나 ""(빈공백)과는 다르다!
- NULL과 연산을 하면 결과값은 NULL이다.
5.1. 행을 추가하는 명령INSERT INTO EMPLOYEES(employee_id, last_name, email, hire_date, job_id) VALUES(207,'성','아이디',SYSDATE,'IT_PROG');
- 확인
SELECT * FROM employees;
5.2. 실습
- 직원테이블에서 직원 아이디, 급여, 연봉 출력하기
- * 단 연봉은 AnnSal로 출력
- SALARY가 없던 사람의 AnnSal의 결과값은?
- 왜 그렇게 결과값이 나왔는가?SELECT employee_ID, salary, salary*12 AS AnnSal FROM employees;
- salary값이 NULL었던 사람은 연봉도 NULL로 출력
- NULL은 비어 있는 값이라서, NULL값에 연산을 하면 NULL 출력728x90'back-end&DB > SQL(Oracle)' 카테고리의 다른 글
SQL CREATE와 ALTER 그리고 제약 조건 (0) 2023.05.10 SQL JOIN (0) 2023.05.09 SQL GROUP BY와 HAVING와 ORDER BY (0) 2023.05.08 SQL 함수 (0) 2023.05.04 SQL WHERE절과 연산자 (0) 2023.05.03