목차
접기
728x90
반응형
join 데이터베이스 생성
CREATE DATEBASE `join`;
join 데이터베이스 선택
USE `join`;
상품(product) 테이블 생성
CREATE TABLE product(
product_no INT(10) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
`name` CHAR(100) NOT NULL,
price INT(100) UNSIGNED NOT NULL
);
재고 테이블이 존재한다면 삭제
DROP TABLE IF EXISTS stock;
FK(외래키) 설정하는 재고 테이블 생성
CREATE TABLE stock(
product_no INT(10) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
`count` CHAR(100) NOT NULL,
receiving_date TIMESTAMP,
FOREIGN KEY (product_no) REFERENCES product (product_no)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
FOREIGN KEY (현재 테이블의 외래키 설정할 칼럼명) REFERENCES 참조할 테이블명 (참조할 테이블의 칼럼명)
재고 생성
INSERT INTO stock
SET `count` = 10,
receiving_date = NOW();
INSERT INTO stock
SET `count` = 50,
receiving_date = NOW();
INSERT INTO stock
SET `count` = 20,
receiving_date = NOW();
상품 생성
INSERT INTO product
SET `name` = 'A',
price = 1000;
INSERT INTO product
SET `name` = 'B',
price = 5000;
INSERT INTO product
SET `name` = 'C',
price = 3000;
테이블 JOIN _ 연습1
SELECT P.*
FROM product P
JOIN stock S ON S.product_no = P.product_no
WHERE S.product_no = 3;
JOIN 앞에는 INNER가 생략되어 있다.
- product 테이블을 P라는 별칭을 붙여 출력하겠다.
- stock 테이블을 S 라는 별칭을 붙여 S.product_no 와 P.product_no가 같은 stock 테이블의 product_no가 3인 product 를 출력하겠다.
연습1의 쿼리 결과
###
728x90
반응형
LIST
'SQL' 카테고리의 다른 글
LEFT/RIGHT JOIN 기본 사용법 (0) | 2021.03.24 |
---|---|
JOIN 기본 사용법(FK 설정 포함)_연습2 (0) | 2021.03.24 |
MySQL SYSDATE(), NOW() 함수 비교 (0) | 2021.03.17 |
[ sql ] modify column ~~ unsigned , auto_increment (0) | 2020.12.01 |
[ SQL ] 쿼리 모음 (0) | 2020.11.25 |