여러 테이블을 하나의 테이블처럼 사용하는 것 두 개 이상의 테이블을 결합하여 데이터를 추출하는 기법 두 테이블의 공통값을 이용하여 칼럼을 조합하는 수단 테이블 조인의 종류 1) inner join - 두 테이블에 공통으로 존재하는 칼럼을 이용하는 방식 - inner 생략가능 - 기본 2) left outer join - 왼쪽 테이블의 모든 데이터와 오른쪽 테이블의 동일 데이터를 추출 - outer 생략가능 3) right outer join - 오른쪽 테이블의 모든 데이터와 왼쪽 테이블의 동일 데이터를 추출 - outer 생략가능 형식 SELECT 칼럼명 FROM 테이블1 JOIN 테이블2 ON 조건절; --ANST(표준) SQL문 SELECT 칼럼명 FROM 테이블1, 테이블2 ON 조건절; --Ora..
관계형 DB 1. 개념 데이터베이스내의 테이블은 최소한의 의미(주제)를 가지는 테이블로 분리해서 구성하되, 그 테이블에 있는 컬럼을 연결한 것이다. 부모테이블:Primary Key 기본키 자식테이블:Foreign Key 외래키 형태로 연결된다. 분리된 테이블은 관계가 형성되는데 총 3가지 유형이 있다. 1) 1:1 관계 두 테이블간 어떤 테이블의 PK라도 다른 테이블에 전이되어도 상관없다 2) 1:N 관계 두 테이블간의 관계를 위해서 교차테이블 만들 필요 없다. 단, 1관계에 있는 PK를 N관계에 있는 테이블에 컬럼으로 전이시켜 관계를 맺는다. 예) 부서 ---- 사원 3) N:M 관계 두 테이블간의 관계를 위해서 교차테이블을 반드시 만든다 예) 학생-수강-과목 회원-예매-영화 회원-구매-물품 - For..
집계 함수 19일에 이어서 --문3) 총점(tot), 평균(aver) 구하시오 UPDATE sungjuk SET tot=kor+eng+mat, aver=(kor+eng+mat)/3; --문4) 평균(aver)이 80점이상 행을 대상으로 주소별 인원수를 인원수순으로 조회하시오 SELECT addr, count(*) --4) FROM sungjuk --1) WHERE aver>=80 --2) GROUP BY addr --3) ORDER BY count(*); --5) 2차 그룹 --주소별(1차) 그룹을 하고, 주소가 같다면 국어 점수(2차)로 그룹화 하기 SELECT addr, kor FROM sungjuk GROUP BY addr, kor ORDER BY addr; SELECT addr, kor, coun..
Sort 정렬 데이터베이스에서 정보를 가져올 때에는 정렬을 해서 가져오는 것이 좋다. 특정값(keyfield)을 기준으로 순서대로 재배치 오름차순 Ascending Sort (ASC) 생략하면 오름차순이 기본값 (1->10 A->Z a->z ㄱ->ㅎ) 내림차순 Descending Sort (DESC) 형식) order by 칼럼명1 (1차 정렬), 칼럼명2 (2차 정렬), 칼럼명3 (3차 정렬), ... -- 전체 레코드를 이름 순으로 정렬해서 조회하시오 select uname from sungjuk order by uname asc; --오름차순 정렬 select uname from sungjuk order by uname; --asc 생략 가능 select uname from sungjuk order..