Restricting and Sorting Data

Slides:



Advertisements
Similar presentations
파이썬 (Python). 1 일 : 파이썬 프로그래밍 기초 2 일 : 객체, 문자열 3 일 : 문자인코딩, 정규표현식, 옛한글 4 일 : 파일 입출력 5 일 : 함수와 모듈 6 일 : 원시 말뭉치 다루기 실습 7 일 : 주석 말뭉치 다루기 실습 8 일 : 웹 데이터로.
Advertisements

변수와 조건문 빛나리 36 호 박승운. 파이썬 쉽게 사용하기 Python IDLE 사용 FILE - New File 로 파일 만들기 Run – Run Module 로 실행하기.
LAB: Web-scale Data Management on a Cloud Lab 1. Introduction 2011/03/04.
Chapter 12. 배열. 배열  동일한 항목들이 동일한 크기로 연속적으로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는 자료 구조.
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
이진 나무 구조 강윤섭 2008년 5월 23일.
02 SQL 언어 SQL 명령문의 종류와 사용 방법 오라클 오류 메시지.
02 SQL 언어 SQL 명령문의 종류와 사용 방법 오라클 오류 메시지.
MYSQL 설치 SQL언어 SQL언어의 활용 웹과 SQL언어와의 연동
Hive. Part of Hadoop Ecosystems MapReduce Runtime (Dist. Programming Framework) Hadoop Distributed File System (HDFS) Zookeeper (Coordination) Hbase (Column.
Nested Queries CSED421: Database Systems Labs.
DB 프로그래밍 학기.
DB 프로그래밍 학기.
Database & Internet Computing Laboratory 한 양 대 학 교
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
Excel 일차 강사 : 박영민.
5장 SQL 주요 함수.
06 SQL 함수 SQL 함수의 개념 문자 함수 숫자 함수 날짜 함수 데이터 타입의 변환 일반 함수.
데이터 베이스 설계 및 실습 #1 - 오라클 설치 및 SQL 기본.
SELECT 문 사원 테이블의 모든 정보를 출력하는 예제 1. 비교 연산자 SELECT 문의 형태
8장 서브 쿼리.
6장 Mysql 명령어 한빛미디어(주).
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
요약 정보 만들기.
기본적인 SELECT문 작성.
데이터 베이스 설계 및 실습 #3 - SQL 함수.
SQL*PLUS.
11 테이블 관리와 데이터 딕셔너리 데이터베이스 응용 프로젝트 개발 테이블 구조 변경 데이터 딕셔너리.
테이블 : 데이터베이스를 구성하는 요소로 같은 성격에 정보의 집합체. 레코드 : 하나의 정보를 가지고 있는 컬럼의 집합체
14장 뷰.
6장 그룹 함수.
07 그룹 함수 그룹 함수의 개념 그룹 함수의 종류 데이터 그룹 생성 HAVING 절.
09 서브쿼리(Subquery) 서브쿼리의 개념 서브쿼리의 종류 데이터베이스 실무에서 서브쿼리 사용시 주의 사항.
Heesang kim PL/SQL 3 Heesang kim.
SELECT empno, ename, job, sal, dname FROM emp, dept
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
MYSQL 설치 SQL언어 SQL언어의 활용 웹과 SQL언어와의 연동
Quiz #1.
13 인덱스 인덱스의 개념 인덱스의 구조 인덱스의 효율적인 사용 방법 인덱스의 종류 및 생성 방법 인덱스 실행 경로 확인
다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL
MATLAB
JA A V W. 03.
ROC curve Receiver-Operating Characteristic curve.
기초 SQL 문 SELECT 문과 같은 데이터베이스 조회 명령문을 이해한다.
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
연산자 (Operator).
에어 조건문.
오라클 쿼리 문제 EMP (사원 테이블) DEPT (부서 테이블) 컬럼명 설명 EMPNO 사원번호 ENAME 사원명 JOB
기본적인 SELECT문 작성.
8장 테이블의 생성 및 변경 정인기.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
Regular Expression 1 Powerful pattern matching with regular expression to a string while () { if ( /ab*c/ ) { print $_; } } substitute operator s/abc*c/def/;
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
Chapter 02. 자바 기본 문법.
Choi Seong Yun 컴퓨터 프로그래밍 기초 #03 : 변수와 자료형 Choi Seong Yun
2014년 가을학기 손시운 지도 교수: 문양세 교수님 데이터 프레임 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
제3장 함수와 배열수식 전진환
문성우 SQL 실습 Part Ⅰ 문성우.
학습목표 학습목표 관계 데이터베이스에서 데이터 조작에 사용되는 명령어(DML)는 삽입(INSERT), 삭제(DELETE), 수정(UPDATE), 검색(SELECT) 이 있는데 이 중 사용 빈도가 가장 높은 것이 데이터의 검색에 사용되는 SELECT문 이며 이 명령문은 다양한.
Regular Expression 1 Powerful pattern matching with regular expression to a string while () { if ( /ab*c/ ) { print $_; } } substitute operator s/abc*c/def/;
에어 PHP 입문.
10 데이터 조작어 데이터 조작어 데이터 입력 데이터 수정 데이터 삭제 MERGE 트랜잭션 관리 시퀀스.
10 데이터 조작어 데이터 조작어 데이터 입력 데이터 수정 데이터 삭제 MERGE 트랜잭션 관리 시퀀스.
DA :: 퀵 정렬 Quick Sort 퀵 정렬은 비교방식의 정렬 중 가장 빠른 정렬방법이다.
Chapter 10 데이터 검색1.
8장 선택 논리 II 1. 논리연산자 1.1 논리연산자 : AND (&&) 1.2 논리연산자 : OR (||)
 6장. SQL 쿼리.
                              데이터베이스 설계 및 실습 #6 - SQL 실습 한국외국어대학교 DaPS 연구실                              
fastestslowest 실제 질의문에서 사용 타입 추천 인덱스 SELECT list Default
6 객체.
Presentation transcript:

Restricting and Sorting Data

Limiting Rows Using Selection 일반적으로 테이블의 모든 자료를 조회하지 않고 사용자가 원하는 자료를 조회하는 경우가 대부분임 SQL의 WHERE절을 사용하여 행 제한 부서10인 직원을 조회!

Limiting Row Selected WHERE을 사용하여 반환되는 행을 제한 WHERE절은 FROM절 다음에 위치함 열이름 비교연산자 열이름 , 상수 또는 값의 목록 Tip) Sigle Quation 사용 문자, 날짜 대소문자 구분 SELECT [DISTINCT] {*, column [alias], . . .} FROM table_name [WHERE condition]

Using the WHERE Clause 문) EMP테이블에서 업무가 CLERK인 사원의 이름, 업무, 부서번호를 조회하시오 SELECT ename, job, deptno FROM emp WHERE job = 'Clerk'; 오류! Why? SELECT ename, job, deptno FROM emp WHERE job = 'CLERK';

Character String and Dates 문자 스트링과 날짜 값은 단일 인용부호(' ')로 둘러 싸여 있음 문자값은 대소문자를 구분 날짜값은 날짜 형식을 구분 디폴트 날짜 형식은 'DD-MON-YY'

Comparison Operators 비교 연산자 Operator Meaning = 같다 > 보다 크다 >= 보다 크거나 같다 < 보다 작다 <= 보다 작거나 같다 <> , != 같지 않다

Using Comparison Operators 문) 보너스가 급여보다 같거나 큰 사원의 이름, 급여, 보너스 조회하시오 Where절에 명확한 값이 지정되지 않고, 두 값은 EMP테이블의 sal과 comm열이 비교됨 SELECT ename, sal, comm FROM emp WHERE sal <= comm

Other Comparison Operators 다른 비교 연산자 Operator Meaning BETWEEN a AND b a와 b 사이에 있음.(a,b값포함) IN (list) list의 값중 어느 하나와 일치함 LIKE 문자 패턴과 일치 IS NULL NULL값을 가짐

Using the BETWEEN Operator 두 값의 범위에 해당하는 행을 출력하기 위해 사용 명시한 범위는 하한값과 상한 값을 포함 작은 값을 앞에 기술하고 큰 값은 뒤에 기술해야함 문) 급여가 $1000에서 $1500 사이에 직원에 대한 사원이름과 급여를 조회하시오 SELECT ename, sal FROM emp WHERE sal BETWEEN 1000 AND 1500; sal BETWEEN 1500 AND 1000; ?? WHERE sal >= 1000 and sal <= 1500

Using the IN Operator 목록에 있는 값들과 비교하기 위해 IN연산자를 사용 어떤 데이터 형과도 사용될수 있음 문) 관리자의 사원 번호가 7902,7566,7788인 모든 직원의 직원번호, 이름, 급여 그리고 관리자의 직원번호를 조회하시오 SELECT empno, ename, sal, mgr FROM emp WHERE mgr IN (7902,7566, 7788)

Using the IN Operator 문) EMP테이블에 사원이름이 FORD, ALLEN가 존재하면 사원번호, 사원이름, 관리자 사원번호, 부서번호를 조회하시오 SELECT empno, ename, mgr,deptno FROM emp WHERE ename IN ('FORD', 'ALLEN') 리스트안에 문자, 날짜사용시 SINGLE QUATION ('') 사용

Using the LIKE Operator 검색값을 항상 정확하게 알수는 없으므로 검색 STRING 값에 대한 문자 패턴 일치 연산 (와일드 카드 검색)을 위해 사용 검색 조건은 LITERAL 문자나 숫자를 포함할 수 있음 ‘%’ : 문자가 없거나 하나 이상의 문자 ‘_’ : 단일 문자를 나타냄 패턴 일치 문자(_, %)를 조합할 수 있음 ‘%’나 ‘_’에 대해서 검색하기 위해서는 Escape 식별자를 이용 A% : 첫글자 A %A : 마지막 글자 A %A% : 중간에 글자 A _A% : 두번째 글자 A

Using the LIKE Operator SELECT ename FROM emp WHERE ename LIKE 'S%'; SELECT ename FROM emp WHERE ename LIKE '_A%';

Using the IS NULL Operator 문) 관리자가 없는 모든 종업원의 이름과 관리자의 사원번호를 조회하시오 SELECT ename, mgr FROM emp WHERE mgr IS NULL;

Logical Operators Operator Meaning AND 양쪽 컴포넌트의 조건이 TRUE이면 TRUE를 RETURN OR 한쪽 컴포넌트의 조건만이 TRUE이면 TRUE를 RETURN NOT 이후의 조건이 FALSE이면 TRUE를 RETURN

Using the AND Operator 양쪽의 조건이 참이어야 TRUE를 RETURN 문) 업무가 CLERK이고 급여가 $1100이상인 직원의 사번, 이름, 업무, 급여를 조회하시오 AND TRUE FALSE NULL SELECT empno,ename,job,sal FROM emp WHERE sal >= 1100 AND job = 'CLERK';

Using the OR Operator 한쪽의 조건만 참이면 TRUE를 RETURN 문) 업무가 CLERK이거나 급여가 $1100이상인 직원의 사번, 이름, 업무, 급여를 조회하시오 OR TRUE FALSE NULL SELECT empno,ename,job,sal FROM emp WHERE sal >= 1100 AND job = 'CLERK';

Using the NOT Operator 문) 업무가 CLERK, MANAGER, ANALYST가 아닌 모든 직원의 이름과 업무를 조회하시오 SELECT ename,job FROM emp WHERE job NOT IN ('CLERK', 'MANAGER', 'ANALYST');

Rules of Precedence 우선순위 규칙 Order Evaluated Operator 1 괄호 2 모든 비교연산자 ( =, >=, <>) 3 NOT 4 AND 5 OR

Rules of Precedence 문) 아래 조건을 만족하는 직원의 이름, 업무, 급여를 조회하시오 첫번째 조건 : 업무가 PRESIDENT이고 급여가 1500보다 큼 두번째 조건 : 업무가 SALESMAN SELECTename,job,sal FROM emp WHERE job = 'SALESMAN' OR job = 'PRESIDENT' AND sal > 1500;

Rules of Precedence 우선순위를 강제로 변경하기위해 괄호 사용 문) 아래 조건을 만족하는 직원의 이름, 업무, 급여를 조회하시오 첫번째 조건 : 업무가 PRESIDENT이거나 SALESMAN 두번째 조건 : 급여가 1500보다 큼 SELECTename,job,sal FROM emp WHERE (job = 'SALESMAN' OR job = 'PRESIDENT' ) AND sal > 1500;

ORDER BY Clause 질의 결과에 RETURN되는 행의 순서는 정의되지 않음 ORDER BY 절로 행을 정렬 ASC : 오름차순, 디폴트 DESC : 내림차순 ORDER BY절은 SELECT문장의 가장 뒤에 기술 정렬을 위한 표현식이나 alias(별칭) 명시할수 있음 SELECT [DISTINCT] {*, column [alias], . . .} FROM table_name [WHERE condition] [ORDER BY {column, expression} [ASC | DESC]];

ORDER BY Clause 디폴트 정렬은 오름차순 숫자 값 : 가장 적은 값이 먼저 출력(예 : 1 ~ 999) 날짜 값 : 가장 빠른 값이 먼저 출력(예 : 01-JAN-92 ~ 01-JAN-95) 문자 값 : 알파벳 순서로 출력(예 : A ~ Z ~ a ~ z) Null값:오름차순에서는 제일 나중에, 내림차순에서는 제일 먼저 위치 문) 사원의 고용일을 오름차순으로 이름, 업무, 고용일을 조회하시오 SELECT ename, job, hiredate FROM emp ORDER BY hiredate;

Sorting in Descending Order 디폴트 순서 변경 ORDER BY절에서 열 이름 뒤에 DESC키워드를 명시해야 함 SELECT ename, job, hiredate FROM emp ORDER BY hiredate DESC;

Sorting by Column Alias SELECT empno,ename,job,sal,sal*12 annsal FROM emp ORDER BY annsal; ORDER BY 5; ORDER BY sal*12;

Sorting by Multiple Columns 다중 열에 의한 정렬 하나 이상의 열로 질의 결과를 정렬 ORDER BY절에서 열을 명시하고, 열 이름은 콤마로 구분 열의 순서를 바꾸고자 한다면 열 이름 뒤에 DESC를 명시 문) EMP 테이블에서 부서번호로 정렬한 후 부서번호가 같을 경우 급여가 많은 순으로 정렬하여 이름, 부서번호, 급여를 조회하시오 SELECT ename, deptno,sal FROM emp ORDER BY deptno, sal DESC;