PK(primary key : 기본키)는 학생과 수업의 테이블에서 각 행의 정보들을 식별할 수 있는 정보(학생코드, 수업코드)를 표현한다. PK는 테이블 행의 여러 정보들 중 행을 식별할 수 있어야 하는 때문에 비어있으면 안되고(NOT NULL) 중복되어서도 안된다(Unique). NOT NULL 과 Unique의 속성을 모두 가진다. FK(foreign key : 외래키)는 참조하는 테이블과 참조되는 테이블의 관계를 나타낸다. 그림에서 학생-수업 테이블은 학생테이블과 수업테이블의 관계를 1:N 관계로 나타내기위한 테이블이므로 학생테이블과 수업테이블을 참조하여 만들어야 한다. 그러기 위해서 학생정보를 식별하는 학생코드(PK), 수업정보를 식별하는 수업코드(PK)로 테이블이 구성되며 이렇게 다른 테이블의 ..
DROP DATABASE IF EXISTS sqldb; -- 만약 sqldb가 존재하면 우선 삭제한다. CREATE DATABASE sqldb; USE sqldb; CREATE TABLE usertbl -- 회원 테이블 ( userID CHAR(8) NOT NULL PRIMARY KEY, -- 사용자 아이디(PK) name VARCHAR(10) NOT NULL, -- 이름 birthYear INT NOT NULL, -- 출생년도 addr CHAR(2) NOT NULL, -- 지역(경기,서울,경남 식으로 2글자만입력) mobile1CHAR(3), -- 휴대폰의 국번(011, 016, 017, 018, 019, 010 등) mobile2CHAR(8), -- 휴대폰의 나머지 전화번호(하이픈제외) height ..
두개 이상의 테이블을 묶어서 하나로 만드는 것. 보통의 JOIN 은 INNER JOIN(내부 조인)을 의미 (JOIN과 INNER JOIN은 같은 구문) SELECT 열 목록 FROM 첫 번째 테이블 JOIN 두 번째 테이블 ON 조인될 조건 (WHERE 검색 조건) SELECT * from buy -- 첫 번째 테이블 inner join members -- 두 번째 테이블 on buy.mem_id = members.mem_id -- 조인될 조건 : mem_id 가 같은 항목 where buy.mem_id = 'GRL'; -- mem__id 가 'GRL'인 행만 표시 두 테이블에 동일한 항목이 있는 컬럼을 select할 때는 어느 테이블의 컬럼을 추출할 지 명시해 주어야 한다. from 과 join 에서..
SELECT 컬럼명 --------------------- (5) FROM 테이블명 ----------------- (1) WHERE 테이블 조건 ------------- (2) GROUP BY 컬럼명 --------------- (3) HAVING 그룹 조건 -------------- (4) ORDER BY 컬럼명 --------------- (6) 1. FROM : SQL은 구문이 들어오면 테이블을 가장 먼저 확인합니다. 2. WHERE : 테이블명을 확인했으니, 테이블에서 주어진 조건에 맞는 데이터들을 추출해줍니다. 3. GROUP BY : 조건에 맞는 데이터가 추출되었으니, 공통적인 데이터들끼리 묶어 그룹을 만들어줍니다. 4. HAVING : 공통적인 데이터들이 묶여진 그룹 중, 주어진 주건에 맞..