CS과목/데이터베이스

[CS과목/데이터베이스] MySQL 실습2

johyeongseob 2025. 6. 12. 11:26

2025-1 데이터베이스 (CSC4009-01) prof. 이우진

 

실습7: 데이터 삽입

mysql> insert into 고객 values ('s2020127022', '지민근', '28', '학생', 0);
Query OK, 1 row affected (0.00 sec)

mysql> insert into 고객 (고객아이디, 고객이름) values ('s2018120232', '홍길동');
Query OK, 1 row affected (0.01 sec)

mysql> select * from 고객;
+-----------------+--------------+--------+--------+-----------+
| 고객아이디      | 고객이름     | 나이   | 직업   | 적립금    |
+-----------------+--------------+--------+--------+-----------+
| s2018120232     | 홍길동       |   NULL | NULL   |         0 |
| s2020127022     | 지민근       |     28 | 학생   |         0 |
+-----------------+--------------+--------+--------+-----------+
2 rows in set (0.00 sec)

 

실습8-1: 데이터 검색 (조회)

mysql> select * from 고객;
+-----------------+--------------+--------+-----------+-----------+--------+
| 고객아이디      | 고객이름     | 나이   | 직업      | 적립금    | 등급   |
+-----------------+--------------+--------+-----------+-----------+--------+
| apple           | 정소화       |     20 | 학생      |      1000 | gold   |
| banana          | 김선우       |     25 | 간호사    |      2500 | vip    |
| carrot          | 고명석       |     28 | 교사      |      4500 | gold   |
| melon           | 성원용       |     35 | 회사원    |      5000 | gold   |
| orange          | 김용욱       |     22 | 학생      |         0 | silver |
| peach           | 오형준       |   NULL | 의사      |       300 | silver |
| pear            | 채광주       |     31 | 회사원    |       500 | silver |
+-----------------+--------------+--------+-----------+-----------+--------+
7 rows in set (0.00 sec)

 

실습8-2: 데이터 검색 (조회)

mysql> select all 제조업체 from 제품;
+--------------+
| 제조업체     |
+--------------+
| 대한식품     |
| 민국푸드     |
| 한빛제과     |
| 한빛제과     |
| 대한식품     |
| 민국푸드     |
| 한빛제과     |
+--------------+
7 rows in set (0.00 sec)

mysql> select  distinct 제조업체 from 제품;
+--------------+
| 제조업체     |
+--------------+
| 대한식품     |
| 민국푸드     |
| 한빛제과     |
+--------------+
3 rows in set (0.00 sec)

 

실습8-3: 데이터 검색 (조회) - 조건검색

mysql> select 제품명, 단가, 제조업체 from 제품 where 단가 >= 2000 and 단가 <= 3000;
+-----------------+--------+--------------+
| 제품명          | 단가   | 제조업체     |
+-----------------+--------+--------------+
| 콩떡파이        |   2600 | 한빛제과     |
| 맛난초콜릿      |   2500 | 한빛제과     |
+-----------------+--------+--------------+
2 rows in set (0.00 sec)

 

실습8-4: 데이터 검색 (조회) - 조건검색 (LIKE 사용)

mysql> select 고객이름, 나이, 등급, 적립금 from 고객 where 고객이름 like '김%';
+--------------+--------+--------+-----------+
| 고객이름     | 나이   | 등급   | 적립금    |
+--------------+--------+--------+-----------+
| 김선우       |     25 | vip    |      2500 |
| 김용욱       |     22 | silver |         0 |
+--------------+--------+--------+-----------+
2 rows in set (0.00 sec)

mysql> select 고객아이디, 고객이름, 등급 from 고객 where 고객아이디 like '_____';
+-----------------+--------------+--------+
| 고객아이디      | 고객이름     | 등급   |
+-----------------+--------------+--------+
| apple           | 정소화       | gold   |
| melon           | 성원용       | gold   |
| peach           | 오형준       | silver |
+-----------------+--------------+--------+
3 rows in set (0.00 sec)

 

실습8-5: 데이터 검색(조회)-정렬(ORDER BY)

mysql> select 주문고객, 주문제품, 수량, 주문일자 from 주문 where 수량 >= 10 order by 주문제품 asc, 수량 desc;
+--------------+--------------+--------+--------------+
| 주문고객     | 주문제품     | 수량   | 주문일자     |
+--------------+--------------+--------+--------------+
| banana       | p01          |     19 | 2019-03-02   |
| pear         | p02          |     50 | 2019-04-10   |
| apple        | p03          |     22 | 2019-03-15   |
| carrot       | p03          |     20 | 2019-05-22   |
| apple        | p03          |     10 | 2019-01-01   |
| banana       | p04          |     15 | 2019-04-11   |
| banana       | p06          |     45 | 2019-01-11   |
| melon        | p06          |     36 | 2019-02-20   |
+--------------+--------------+--------+--------------+
8 rows in set (0.00 sec)

 

실습8-6: 데이터 검색(조회)-집계함수

mysql> select count(고객아이디) as 고객수 from 고객;
+-----------+
| 고객수    |
+-----------+
|         7 |
+-----------+
1 row in set (0.00 sec)

mysql> select count(나이) as 고객수 from 고객;
+-----------+
| 고객수    |
+-----------+
|         6 |
+-----------+
1 row in set (0.00 sec)

mysql> select count(distinct 제조업체) as '제조업체 수' from 제품;
+------------------+
| 제조업체 수      |
+------------------+
|                3 |
+------------------+
1 row in set (0.00 sec)