DEV/Database

[MySQL] 기초 문법 정리 (1 / 2)

Bi3a 2023. 10. 31. 23:42

목차
반응형

MySQL의 기초 문법을 정리한다.
mySql 데이터베이스

 

 

데이터베이스 관련

SHOW : 전체 데이터베이스 리스팅

sql
닫기
SHOW DATABASES;

Show DATABASES 출력 화면 결과

 

USE : 데이터베이스 선택, 데이터베이스의 테이블 리스팅

sql
닫기
USE `DB명`;
SHOW TABLES;

USE : 데이터베이스 선택, 데이터베이스의 테이블 리스팅 결과

 

 

데이터베이스 생성,  삭제

sql
닫기
CREATE DATABASE `DB명`
DROP DATABASE IF EXISTS `DB명`

 

특정 테이블의 구조 확인(describe)

sql
닫기
DESC `테이블명`;

특정 테이블의 구조 확인(describe) 출력 결과

 

테이블 조작 관련(구조 확인, CRUD)

설명 예시를 위해 이후부터는 테이블명 article과 예하 칼럼명으로 예시를 구현하겠습니다.

 

CREATE : 테이블 생성

sql
닫기
CREATE TABLE article(
title VARCHAR(100),
`body` TEXT
);
#심화형
CREATE TABLE article(
id int unsigned not null unique auto_increment,
primary key(id),
title VARCHAR(100),
`body` TEXT
);

 

DESC : 테이블 구조 확인

sql
닫기
DESC article;

 

FIRST, AFTER : 테이블 칼럼을 특정 위치에 추가

sql
닫기
ALTER TABLE article ADD COLUMN id NOT NULL UNIQUE INT FIRST;
ALTER TABLE article ADD COLUMN regDate DATETIME AFTER `body`;

FIRST, AFTER : 테이블 칼럼을 특정 위치에 추가 출력 결과

 

DROP : 테이블 칼럼을 삭제

sql
닫기
ALTER TABLE article DROP COLUMN id;

DROP : 테이블 칼럼을 삭제 결과 확인

 

CHANGE, MODIFY : 테이블 칼럼을 업데이트

sql
닫기
ALTER TABLE article CHANGE COLUMN regDate reg DATETIME; # regDate : 구이름, reg : 신이름
ALTER TABLE article ADD PRIMARY KEY(id); #id를 PK로 선언
ALTER TABLE article MODIFY COLUMN id INT NOT NULL; # data에 null 값이 없도록 제한
# 전제 : AUTO_INCREMENT는 해당 칼럼의 데이터가 비어 있지 않고, 해당 칼럼이 PK로 선언되어야 가능
ALTER TABLE article MODIFY COLUMN id INT AUTO_INCREMENT; # 생성 시 값이 자동으로 1씩 증가
ALTER TABLE article MODIFY COLUMN id UNSIGNED; # id 값에 음수가 없도록 제한
ALTER TABLE article MODIFY COLUMN id INT AUTO_INCREMENT UNSIGNED; # 두개 다 적용도 가능

 

 

데이터 생성, 조회, 삭제, 업데이트 관련

이하의 데이터 생성, 조회, 삭제, 업데이트는 이하의 테이블을 기준으로 진행합니다.

데이터 생성, 조회, 삭제 업데이트 데이터 예제

 

INSERT INTO : 신규 데이터 생성, 삽입

sql
닫기
INSERT INTO article (title, `body`)
VALUES('제목', '내용'); # 일부만 집어넣을 수 있다.

INSERT INTO : 신규 데이터 생성, 삽입 결과 확인

 

UPDATE, SET : 기존 데이터를 업데이트

sql
닫기
UPDATE article SET id = 1 WHERE id IS NULL; # id 값이 null 인 데이터의 id 값을 1로 변경
UPDATE article SET id = 2 LIMIT 1; # 한개의 데이터 로우에 한정해서 id 값을 2로 변경
UPDATE article SET id = 3 WHERE id = 1; # id 값이 1 인 데이터의 id 값을 3로 변경

2) UPDATE, SET : 기존 데이터를 업데이트 결과 확인

 

DELETE FROM : 기존 데이터를 삭제

sql
닫기
DELETE FROM article WHERE id = 3;

DELETE FROM : 기존 데이터를 삭제 하는 화면

 

SELECT FROM : 기존 데이터를 조회

예시 구현을 위해 현 단계에서 일부 데이터를 추가하였음
sql
닫기
SELECT title, `body` FROM article
SELECT title FROM article
SELECT * FROM article # * : 모든 칼럼을 조회

SELECT FROM : 기존 데이터를 조회 하는 화면

 

SELECT FROM where : 기존 데이터에서 특정 조건을 건 값을 조회

sql
닫기
SELECT * FROM article where id > 3
SELECT * FROM article WHERE title LIKE '%바람%'; # 바람이라는 문자열을 제목에서 포함한 데이터
SELECT * FROM article WHERE title LIKE '%바람'; # 바람이라는 문자열이 문자열 뒤에 나오는 데이터
SELECT * FROM article WHERE title LIKE '바람%'; # 바람이라는 문자열이 문자열 앞에 나오는 데이터

SELECT FROM where : 기존 데이터에서 특정 조건을 건 값을 조회하는 화면 확인
SELECT FROM where : 기존 데이터에서 특정 조건을 건 값을 조회하는 화면에 대한 id 값 조회

 

NOW() : 날짜 채우기

sql
닫기
SELECT NOW();
UPDATE article SET reg = NOW() WHERE reg IS NULL;

DateTime Now로 현재시간 조회가 가능하다 (화면)

 

 

# 학습에 참고하면 좋을 사이트

 

W3Schools Online Web Tutorials

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

관계형 데이터 모델링

수업소개 관계형 데이터베이스의 테이블을 설계하는 방법을 알려드리는 수업입니다. 이 수업은 아래와 같은 내용을 담고 있습니다.  데이터 모델링의 효용 업무파악 개념적 데이터 모델링 논

opentutorials.org

 


다음 포스팅에서 이어집니다.

2023.11.01 - [DEV/Database] - [MySQL] 기초 문법 정리 (2 / 2)

 

[MySQL] 기초 문법 정리 (2 / 2)

이전 글에서 이어집니다. [Mysql] 기초 문법 정리 (1 / 2)1. 데이터베이스 관련 1) SHOW : 전체 데이터베이스 리스팅 SHOW DATABASES; 2) USE : 데이터베이스 선택, 데이터베이스의 테이블 리스팅 USE `DB명`; SHO

doinitright.tistory.com

 

반응형