본문 바로가기

전체 글

(113)
2-8) 표준 조인 표준 조인ANSI 표준으로 작성되는 INNER JOIN, CROSS JOIN, NATURAL JOIN, OUTER JOIN을 말함 INNER JOIN내부 조인, 조인 조건이 일치하는 행만 추출 (ORACLE 조인 기본)ANSI 표준의 경우 FROM 절에 INNER JOIN 혹은 줄여서 JOIN 명시, 으로 연결만 XANSI 표준의 경우 USING이나 ON 조건절을 필수적으로 사용 ON 절조인할 양 컬럼의 컬럼명이 서로 다르더라도 사용 가능ON 조건의 괄호는 옵션 (생략 가능)컬럼명이 같을 경우 테이블 이름이나 ALIAS를 사용하여 명확하게 지정 (테이블 출처 명확히)ON 조건절에서 조인 조건 명시, WHERE 절에서는 일반 조건 명시 ** 문법  예) EMP 테이블과 DEPT 테이블을 사용하여 각 직원의..
2-7) 조인 JOIN (조인)여러 테이블의 데이터를 사용하여 동시 출력하거나 참조할 경우 사용FROM 절에 조인할 테이블 나열ORACLE 표준은 테이블 나열 순서 중요하지 X, ANSI 표준은 OUTER JOIN 시 순서 중요WHERE 절에서 조인 조건을 작성 (ORACLE 표준)동일한 열 이름이 여러 테이블에 존재할 경우 열 이름 앞에 테이블 이름이나 테이블 ALIAS 붙임N개의 테이블 조인하려면 최소 N-1 개의 조인 조건이 필요적다면 카타시안 곱 발생 가능ORACLE 표준과 ANSI 표준이 서로 다름  조인 종류조건의 형태에 따라EQUI JOIN (등가 JOIN) : JOIN 조건이 동등 조건 (=)인 경우NON EQUI JOIN : JOIN 조건이 동등 조건이 아닌 경우조인 결과에 따라INNER JOIN : ..
2-6) ORDER BY 절 ORDER BY 절데이터는 입력된 순서대로 출력, 출력되는 행의 순서를 사용자가 변경하고자 할 때 ORDER BY 절 사용ORDER BY 뒤에 명시된 컬럼 순서대로 정렬 → 1차 정렬, 2차 정렬 전달 가능정렬 순서 : 오름차순 (ASC), 내림차순 (DESC)로 전달생략 시 오름차순 정렬유일하게 SELECT 절에 정의한 컬럼 ALIAS 사용 가능SELECT 절에 선언된 순서대로의 숫자 전달 가능컬럼명과 숫자 혼합 사용 가능 ** 문법  정렬 순서 (오름차순)한글 : 가, 나, 다, 라...영어 : A, B, C, D...숫자 : 1, 2, 3, 4...날짜 : 과거 날짜부터 최근 날짜 순서로 정렬 예1) 문자 정렬가장 왼쪽 문자부터, 같은 값이면 다음 문자의 값을 비교해서 정렬됨 예2) 숫자값을 문자값..
2-5) GROUP BY 절과 HAVING 절 GROUP BY 절각 행을 특정 조건에 따라 그룹으로 분리하여 계산하도록 하는 구문식GROUP BY 절에 그룹을 지정할 컬럼을 전달 (여러 개 전달 가능)그룹 연산에서 제외할 대상이 있다면 미리 WHERE 절에서 해당 행을 제외하기!WHERE 절이 GROUP BY 절보다 먼저 수행되기 때문그룹에 대한 조건은 WHERE절에서 사용할 수 없음SELECT 절에 집계 함수를 사용하여 그룹 연산 결과 표현GROUP BY 절을 사용하면 데이터가 요약되므로 요약되기 전 데이터와 함께 출력할 수 없음예) 원래 테이블의 10개 행 → GROUP BY로 3개로 요약됨 → GROUP BY 결과에 따른 집계 함수 (SUM 등)과 원래 테이블의 컬럼을 함께 출력 불가개수가 다르기 때문 ** 문법  예1) 부서별 (DEPARTM..
2-4) WHERE 절 WHERE 절테이블의 데이터 중 원하는 조건에 맞는 데이터만 조회하고 싶을 경우 사용여러 조건 동시 전달 가능 (AND와 OR로 조건 연결)NULL 조회 시 IS NULL / IS NOT NULL 연산자 사용= 연산자로 조회 불가연산자를 사용하여 다양한 표현이 가능조건 전달 시 비교 대상의 데이터 타입 일치하는 것이 좋음예) EMP 테이블의 부서번호 컬럼의 데이터타입은 숫자인데 문자 상수로 비교 시 성능 문제 발생  ** 문법  ** 주의사항문자나 날짜 상수 표현 시 반드시 홑따옴표 사용 (다른 절에서도 동일 적용)예) 'SMITH' 등ORACLE은 문자 상수의 경우 대소문자를 구분MSSQL은 기본적으로 문자 상수의 대소문자를 구분하지 X 예1) 이름이 SMITH인 직원 조회 (조건절에 문자 상수 사용)..
2-3) 함수 함수 정의input value가 있을 경우 그에 맞는 output value를 출력해주는 객체input value와 output value의 관계를 정의한 객체from 절을 제외한 모든 절에서 사용 가능 함수 기능기본적인 쿼리문을 더욱 강력하게 해줌데이터의 계산을 수행개별 데이터의 항목을 수정표시할 날짜 및 숫자 형식을 지정열 데이터의 유형 (data type)을 변환 함수의 종류 (입력값의 수에 따라)단일행 함수 / 복수행 함수로 구분단일행 함수 : input과 output의 관계가 1:1복수행 함수 : 여러 건의 데이터를 동시에 입력 받아서 하나의 요약값을 리턴그룹함수 또는 집계함수라고도 함  입/출력값의 타입에 따른 함수 분류 1. 문자형 함수문자열 결합, 추출, 삭제 등을 수행단일행 함수 형태ou..
2-2) SELECT 문 SQL 종류TRUNCATE는 구조 변경이 아니라 데이터 삭제이지만 바로 커밋되어 롤백이 불가능 ≫ DDL로 구분SELECT 문은 따로 SQL 종류 중 어디에도 속하지 않아서 SELECT 문을 위한 DQL 등장 SELECT 문 구조6개 절로 구성각 절의 순서대로 작성해야 함GROUP BY와 HAVING은 서로 바꿀 수 있지만 바꾸지 않는 게 좋음내부 파싱 (문법적 해석) 순서는 나열된 순서와는 다름FROM > WHERE > GROUP BY > HAVING > SELECT > ORDER BY SELECT 절SELECT 문장을 사용하여 불러올 컬럼명, 연산 결과를 작성하는 절*를 사용하여 테이블 내 전체 컬럼명을 불러올 수 있음원하는 컬럼을 ,로 나열하여 작성 가능 (순서대로 출력)표현식이란 원래의 컬럼명을 ..
2-1) 관계형 데이터베이스 개요 데이터베이스 (Database)와 DBMS(DataBase Management System)데이터베이스 : 데이터의 집합, 꼭 형식을 갖추지 않아도 엑셀 파일을 모아 둔다면 그것 또한 데이터베이스임DBMS : 데이터를 효과적으로 관리하기 위한 시스템개인이 파일을 여러 개 묶어서 폴더에 보관하면 데이터를 찾고 관리하는데 많은 비용이 발생이를 보다 시스템적으로 작동하게 만든 시스템을 DBMS 라고 함ORACLE, MYSQL 등  관계형 데이터베이스 구성 요소계정 : 데이터의 접근 제한을 위한 여러 업무별/시스템별 계정이 존재테이블 : DBMS의 DB 안에서 데이터가 저장되는 형식스키마 : 테이블이 어떠한 구성으로 되어있는지, 어떠한 정보를 가지고 있는지에 대한 기본적인 구조를 정의 테이블정의엑셀에서의 워크시..