mysql> create database shop; //데이터베이스 생성
Query OK, 1 row affected (0.01 sec)
mysql> show databases; //데이터베이스 생성 확인
+--------------------+
| Database |
+--------------------+
| ezen |
| information_schema |
| mysql |
| performance_schema |
| sakila |
| shop |
| sys |
| test |
| world |
+--------------------+
9 rows in set (0.00 sec)
mysql> use shop; //shop데이터베이스 사용
Database changed
mysql> create table product( //product테이블 생성
-> num int not null,
-> type_a varchar(45) not null,
-> type_b varchar(45) not null,
-> price int,
-> amount int,
-> sale_amount int,
-> register_data date,
-> primary key(num));
Query OK, 0 rows affected (0.01 sec)
mysql> show tables; //table생성 확인
+----------------+
| Tables_in_shop |
+----------------+
| product |
+----------------+
1 row in set (0.00 sec)
mysql> desc product; //table설정 확인
+---------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+-------+
| num | int | NO | PRI | NULL | |
| type_a | varchar(45) | NO | | NULL | |
| type_b | varchar(45) | NO | | NULL | |
| price | int | YES | | NULL | |
| amount | int | YES | | NULL | |
| sale_amount | int | YES | | NULL | |
| register_data | date | YES | | NULL | |
+---------------+-------------+------+-----+---------+-------+
7 rows in set (0.00 sec)
!!! 여기서 product테이블의 num에 ai설정 못한거 확인 -> 다시 설정 !!!
mysql> alter table product modify num int not null auto_increment; //설정변경(설정추가)
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc product; //변경한 설정확인
+---------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+----------------+
| num | int | NO | PRI | NULL | auto_increment |
| type_a | varchar(45) | NO | | NULL | |
| type_b | varchar(45) | NO | | NULL | |
| price | int | YES | | NULL | |
| amount | int | YES | | NULL | |
| sale_amount | int | YES | | NULL | |
| register_data | date | YES | | NULL | |
| name | varchar(45) | NO | | NULL | |
+---------------+-------------+------+-----+---------+----------------+
8 rows in set (0.00 sec)
!!! 여기서 product테이블에 name을 안넣은것을 확인 -> 추가 설정 넣기 !!!
1. 추가 설정넣기
mysql> insert into product(type_a, type_b, name, price, amount, sale_amount, register_data)
-> values('티셔츠', '긴소매', '폴라티셔츠', 15000, 34, 100, 20201015);
Query OK, 1 row affected (0.00 sec)
2. 넣은 설정 위치 변경하기
- alter table 테이블명 modify column 칼럼명 자료형 after 이동할 칼럼명;
- 이동할 칼럼명의 뒤에 칼럼이 들어감.
mysql> alter table product modify column name varchar(45) after type_b;
Query OK, 0 rows affected (0.05 sec)
Records: 0 Duplicates: 0 Warnings: 0
//정보 입력
mysql> insert into product(type_a, type_b, name, price, amount, sale_amount, register_data)
-> values('티셔츠', '반소매', '순면라운드 반팔티', 15900, 10, 153, 20200915),
-> ('티셔츠', '반소매', '순면라운드 반팔티', 15900, 10, 153, 20200915),
-> ('티셔츠', '반소매', '에어 나시', 9000, 33, 33, 20201110),
-> ('패션운동복', '트레이닝상의', '피트니스상의', 30000, 34, 55, 20201105),
-> ('패션운동복', '트레이닝하의', '피트니스하의', 50000, 55, 34, 20201106),
-> ('아우터', '재킷', '양면 롱 후리스 자켓', 233000, 100, 42, 20201105),
-> ('아우터', '패딩', '롱 패딩 점퍼', 47400, 10, 45, 20201101);
Query OK, 7 rows affected (0.00 sec)
Records: 7 Duplicates: 0 Warnings: 0
//결과
mysql> select * from product;
+-----+------------+--------------+---------------------+--------+--------+-------------+---------------+
| num | type_a | type_b | name | price | amount | sale_amount | register_data |
+-----+------------+--------------+---------------------+--------+--------+-------------+---------------+
| 1 | 티셔츠 | 긴소매 | 폴라티셔츠 | 15000 | 34 | 100 | 2020-10-15 |
| 2 | 티셔츠 | 반소매 | 순면라운드 반팔티 | 15900 | 10 | 153 | 2020-09-15 |
| 3 | 티셔츠 | 반소매 | 순면라운드 반팔티 | 15900 | 10 | 153 | 2020-09-15 |
| 4 | 티셔츠 | 반소매 | 에어 나시 | 9000 | 33 | 33 | 2020-11-10 |
| 5 | 패션운동복 | 트레이닝상의 | 피트니스상의 | 30000 | 34 | 55 | 2020-11-05 |
| 6 | 패션운동복 | 트레이닝하의 | 피트니스하의 | 50000 | 55 | 34 | 2020-11-06 |
| 7 | 아우터 | 재킷 | 양면 롱 후리스 자켓 | 233000 | 100 | 42 | 2020-11-05 |
| 8 | 아우터 | 패딩 | 롱 패딩 점퍼 | 47400 | 10 | 45 | 2020-11-01 |
+-----+------------+--------------+---------------------+--------+--------+-------------+---------------+
8 rows in set (0.00 sec)
< 상품을 최신 순으로 정렬 >
mysql> select * from product order by register_data desc;
+-----+------------+--------------+---------------------+--------+--------+-------------+---------------+
| num | type_a | type_b | name | price | amount | sale_amount | register_data |
+-----+------------+--------------+---------------------+--------+--------+-------------+---------------+
| 4 | 티셔츠 | 반소매 | 에어 나시 | 9000 | 33 | 33 | 2020-11-10 |
| 6 | 패션운동복 | 트레이닝하의 | 피트니스하의 | 50000 | 55 | 34 | 2020-11-06 |
| 5 | 패션운동복 | 트레이닝상의 | 피트니스상의 | 30000 | 34 | 55 | 2020-11-05 |
| 7 | 아우터 | 재킷 | 양면 롱 후리스 자켓 | 233000 | 100 | 42 | 2020-11-05 |
| 8 | 아우터 | 패딩 | 롱 패딩 점퍼 | 47400 | 10 | 45 | 2020-11-01 |
| 1 | 티셔츠 | 긴소매 | 폴라티셔츠 | 15000 | 34 | 100 | 2020-10-15 |
| 2 | 티셔츠 | 반소매 | 순면라운드 반팔티 | 15900 | 10 | 153 | 2020-09-15 |
| 3 | 티셔츠 | 반소매 | 순면라운드 반팔티 | 15900 | 10 | 153 | 2020-09-15 |
+-----+------------+--------------+---------------------+--------+--------+-------------+---------------+
8 rows in set (0.00 sec)