USE sqldb;
SELECT * FROM usertbl;
SELECT * FROM usertbl WHERE name = '김경호';
해당 테이블을 USE로 선택하여 usertbl의 name타이틀을 이용해 필터링하는 예시.
* WHERE 조건문, AND
두가지가 모두 만족할 때
USE sqldb;
SELECT * FROM usertbl;
SELECT userID, Name FROM usertbl WHERE birthYear >= 1970 AND height >= 182;
생일조건, 키 조건이 모두 만족할 때를 필터링하는 예제
*WHERE 조건문, OR
둘중에 하나라도 만족 만족할 때
USE sqldb;
SELECT * FROM usertbl;
SELECT userID, Name FROM usertbl WHERE birthYear >= 1970 OR height >= 182;
-- SELECT userID, Name FROM usertbl WHERE birthYear >= 1970 AND height >= 182;
생일조건, 키 조건이 둘중 하나라도 만족하면 포함하는 예제
*WHERE 조건문, BETWEENA ANDB
두 값 사이에 있는 항목만 골라냄
USE sqldb;
SELECT * FROM usertbl;
SELECT name, height FROM usertbl WHERE height BETWEEN 180 AND 183;
height의 사잇값(180~183 사이)을 필터링 한다.
*WHERE 조건문,IN ('A','B' ... 'C')
IN 내부에 포함되는 모든 항목을 골라냄
USE sqldb;
SELECT * FROM usertbl;
SELECT name, addr FROM usertbl WHERE addr IN ('경남','전남','경북');
addr 내의 IN 내부에 포함되는 모든 항목을 포함
*WHERE 조건문, LIKE '조건'
아래 조건은 '김'으로 시작하는 모든 항목을 골라낸다. 뒤에 %를 붙여준다.
USE sqldb;
SELECT * FROM usertbl;
SELECT name, height FROM usertbl WHERE name LIKE '김%';
아래 조건은 앞에는 무엇으로 시작하는지 모르고, 뒤에는 '종신'으로 끝나는 항목을 필터하는 것.
USE sqldb;
SELECT * FROM usertbl;
SELECT name, height FROM usertbl WHERE name LIKE '_종신';
-- SELECT name, height FROM usertbl WHERE name LIKE '김%';
구매테이블은, 회원테이블을 Foreign Key(FK)로 아이디를 연결하며, 순번이 Primary Key(PK)로 쓴다.
구매테이블의 FK는 구매 항목이므로 해당 아이디가 여러번 나올 수 있다.
반응형
1. 새로운 db 생성.
이름은 sqldb로 했다.
CREATE DATABASE sqldb;
2. 첫번째 테이블 생성
위에서 생성한 db 내에 사용하기 때문에 USE문으로 db명을 선택해야 한다.
user에 관한 정보 "usertbl" 생성. 상단의 Title 부분만 생성하는 것이다.
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글자만입력)
mobile1 CHAR(3), -- 휴대폰의 국번(011, 016, 017, 018, 019, 010 등)
mobile2 CHAR(8), -- 휴대폰의 나머지 전화번호(하이픈제외)
height SMALLINT, -- 키
mDate DATE -- 회원 가입일
);
3. 두번째 테이블 생성
구매목록 관련 테이블 생성, PK으로는 구매의 순번. AUTO_INCREMENT는 자동으로 새롭게 생긴 열에 숫자를 매긴다.