Writing Basic SQL Statements Basic Select Statement SELECT
Writing Basic SQL Statements
Basic Select Statement SELECT [DISTINCT] FROM [WHERE [ORDER BY {*, column [alias], . . . } table_name condition] {column, expression} [ASC | DESC]]; SELECT 절: 열(Columns)을 명시 § DISTINCT: 중복 행 제거 옵션 § * : 테이블의 모든 column 출력 § alias : 해당 column에 대한 다른 이름 부여 v FROM 절: 테이블 명시 § table_name: 테이블명 질의 대상 테이블 이름 v WHERE 절: 조건을 만족하는 행들만 검색 § condition: column, 표현식, 상수 및 비교 연산자 v ORDER BY: 질의 결과 정렬을 위한 옵션(ASC: 오름차순(Default), DESC 내림차순) v 3
실습 테이블 EMP DEPT SALGRADE 5
Column Heading Defaults v 디폴트 데이터 자리 맞춤 § 날짜와 문자 : 죄측 § 숫자 : 우측 SELECT empno, ename, hiredate FROM emp; 숫자 문자 날짜 8
Operator Precedence(2/2) v 연산자 우선순위 § 연봉은 월 급여에 12를 곱하고, 보너스 $100를 더하여 산출 SELECT ename, sal, 12*sal+100 FROM emp; - 곱셈 : 9, 600 +100 = 9, 700 - 덧셈 : 12 *900 =10, 800 12
Using Column Aliases v 문) EMP테이블에서 Ename을 Name로 sal*12를 annual로 출력하시오 SELECT ename AS Name , sal * 12 annual FROM emp; 대문자표현 SELECT ename AS "Name" , sal * 12 "Annual Salary" FROM emp; 공백 표현 18
Using Concatenation Operator v 문제) EMP테이블에서 이름과 업무를 연결하여 조회하시오 § ename과 job 두개의 열이 단일 열의 결과를 만들기위해 조합 SELECT ename || job AS "Employees" FROM emp; SMITH + CLERK 20
Using Literal Character Strings v 문) EMP에서 이름과 업무를 “KING is a PRESIDENT” 형식으로 출력 SELECT ename || ' ' || 'is a' || ' ' || job AS "Employees Details" FROM emp; 공백 공백 v 문) 이름과 연봉을 “KING: 1 Year salary = 60000” 형식으로 출력 SELECT ename || ': 1 Year salary = ' || sal * 12 Monthly FROM emp; 22
Eliminating Duplicate Rows v DISTINCT 키워드 뒤에 여러 개의 열의 조합이 중복되지않음 SELECT deptno, job FROM emp; v 문) EMP테이블에서 부서별 담당업무 조회하시오 SELECT DISTINCT deptno, job FROM emp; 25
Overview of SQL*Plus Category Command Log in to SQL*Plus CONNECT Describe the table structure DESCRIBE Edit your SQL statement EDIT Execute SQL from SQL*Plus / (Buffer ) @, START(FILE) Save(append) SQL statement to file and SAVE Load command from file to buffer to edit GET 26
- Slides: 27