본문 바로가기
서버인프라/데이터베이스

MariaDB Basic

by techwold ted 2023. 10. 25.

지난 시간 우린 업데이트 하는 방법까지 해봤습니다.

https://babo-it.tistory.com/196

 

update를 해보자

https://mariadb.com/kb/en/a-mariadb-primer/ A MariaDB Primer A 10-minute primer on using MariaDB. mariadb.com 오늘도 위 링크에서 똑같이 해볼 것 입니다. 우선 지난 시간에 해봤던 select 를 한번 다시 확인해 볼께요. MariaDB

babo-it.tistory.com

이번에는 다시 처음부터 새로운 데이터 베이스를 만들고 다시 테이블을 생성해서 데이터를 넣고  Join Select를 해보려 합니다.

 

데이터 베이스 생성
CREATE DATABASE bookstore;

USE bookstore;

 

테이블 생성

아래와 같이 2개의 테이블을 생성해 줍니다.

CREATE TABLE books (
isbn CHAR(20) PRIMARY KEY, 
title VARCHAR(50),
author_id INT,
publisher_id INT,
year_pub CHAR(4),
description TEXT );


CREATE TABLE authors
(author_id INT AUTO_INCREMENT PRIMARY KEY,
name_last VARCHAR(50),
name_first VARCHAR(50),
country VARCHAR(50) );

 

데이터 Insert

위에서 문제거 없다면, 아래와 같이 데이터를 넣어줄 겁니다.

INSERT INTO authors
(name_last, name_first, country)
VALUES('Kafka', 'Franz', 'Czech Republic');


INSERT INTO books
(title, author_id, isbn, year_pub)
VALUES('The Castle', '1', '0805211063', '1998');

문제 없이 데이터가 들어 갔다면, 아래와 같이 데이터를 다시 한번 넣어줄꼐요

INSERT INTO books
(title, author_id, isbn, year_pub)
VALUES('The Trial', '1', '0805210407', '1995'),
('The Metamorphosis', '1', '0553213695', '1995'),
('America', '1', '0805210644', '1995');

위에 내용이 문제가없다면 아래와같이 보이실 겁니다.

 

데이터 검색

이제 우리는 select문을 활용하여 데이터를 검색할 것입니다.

기존에 * 를 활용한 select * from [table]; 말고, 원하는 필드의 데이터 및 원하는 데이터를 추출해 낼 것입니다.

select title from books;

위와 같이 books테이블의 title필드의 데이터를 확이해 보겠습니다. 문제 없이 잘 나오나요?

 

그리고 아래와 같이 LIMIT을 활용하여 2개의 데이터만 확인해 보겠습니다.

SELECT title FROM books LIMIT 2;

그리고 테이블을 2개를 JOIN해서 사용해보도록 하겠습니다.

SELECT title, name_last 
FROM books 
JOIN authors USING (author_id);

위와 같이 입력하시고 정상적으로 실행이 된다면, 아래와 같은 데이터가 나올 겁니다.

오늘 알아야 할 가장 중요한 내용이니 꼭 알고 넘어가길 바랍니다.

"select title, name_last from books JOIN authors USING (author_id);" 오늘 알아야할 가장 중요한 내용입니다.

위 select문은 books 테이블의 title과 authors의 name_last를 출력할 것이고 JOIN을 통하여 authors와 books를 연결하여,

USING키워드를 통하여  author_id가 같은 값을 가지고 있는 것을 추출 하는 것입니다.

그럼 다른 쿼리 하나 더 살펴 보겠습니다.

SELECT title AS 'Kafka Books'
FROM books 
JOIN authors USING (author_id)
WHERE name_last = 'Kafka';

위 쿼리 역시 books와 authors를 연결하여 author_id값이 공통인 부분을 찾아서 name_last가 kafka인 값을 나타내는 것입니다. 그리고 출력할때 필드네임을 'kafka Books'라고 해서 넣는 것입니다. 그렇게되면 다음과 같이 결과가 나옵니다.

다들 데이터를 많이 넣이시고 많이 테스트를 해보시길 바랍니다.

현재 넣은 값들은 너무 공통 된 값들이 많습니다. 부분출력을 하더라도 채감이 되지 않는 부분들이 많이 있죠.

이 전시간 오늘 이시간에도 INSERT에 대해서 했습니다.

 

많은 데이터를 수정해서 넣어보시고 원하는 값을 추출하기 위해 노력해 보세요

 

이제는 실습이 필요할 때 입니다.

우리는 조금씩 발전하고 있습니다.

댓글