DB == 데이터베이스
MySQL == MariaDB
MySQL은 DBMS 입니다.
DBMS == DataBase Management System
DBMS는 여러개의 DB를 관리하는 시스템입니다.
MySQL은 DBMS 중에 하나 입니다.
다른 DBMS로는 오라클, MSSQL 등이 있습니다.
MySQL은 전세계에서 가장 많이 사용되는 DBMS 입니다.
DB == 폴더
폴더 => 묶어주는 것
DB는 무엇으로 구성되는가? : 테이블들로 구성되어 있음
테이블 == 표 == 엑셀파일
표 == 칼럼(열, 1줄) + 로우(행, 여러줄)
칼럼 == 번호, 이름, 나이, 연락처
로우 == 1, 홍길동, 24, 010-1234-1234
표에서 칼럼은 한줄만 존재한다.
표에서 로우는 0 ~ N줄 존재할 수 있다.
SQL은 명령어 이다.
SQL은 DB에게 명령을 내릴 때 사용된다.
SQL 명령어 : 전체 데이터베이스 리스팅
SQL 명령어 : 특정 데이터베이스 선택, 다른말로 하면 특정 폴더(DB)로 접속 명령어
USE DB이름
;
mysql
;SQL 명령어 : 현재 접속해 있는 DB안의 모든 테이블들을 리스팅
종류 | DB | TABLE | ROW |
---|---|---|---|
조회 | SHOW DATABASES; | SHOW TABLES; SHOW TABLES LIKE 'ar%' DESC article;(한 테이블 안에 있는 칼럼들 조회) | SELECT id, regDate FROM article WHERE id >= 4 AND title LIKE '제%' ORDER BY id DESC LIMIT 3; |
생성 | CREATE DATABASES; | CREATE TABLE article ( id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, regDate DATETIME NOT NULL, title VARCHAR(100) NOT NULL, body TEXT NOT NULL, PRIMARY KEY(id) ); | INSERT INTO artile SET regDate = NOW(), title = '제목1', body = '내용1'; |
수정 | 없음 | ALTER TABLE article ADD COLUMN hit INT(10); ALTER TABLE article MODIFY COLUMN hit INT(10) UNSIGNED NOT NULL; ALTER TABLE article CHANGE COLUMN hit hitNumber INT(10) UNSIGNED NOT NULL; ALTER TABLE article DROP COLUMN hit; ALTER TABLE article DROP INDEX PRIMARY ;ALTER TABLE article ADD PRIMARY KEY(id); | UPDATE article SET title = '인기글' WHERE id > 3; |
삭제 | DROP DATABASE a1 ; | DROP TABLE article ; | DELETE FROM article ; |
'AB'로 시작하는 것을 찾을 때는 LIKE 'AB%'
테이블 구조 수정 ALTER TABLE
기존 데이터에 값 추가 UPDATE
데이터 자체를 추가 INSERT INTO
아이디 자동으로 1씩 증가 AUTO_INCREMENT
칼럼의 이름 변경 ALTER TABLE (테이블 이름) CHANGE oldName newName TYPE 조건
오름차순 정렬 ORDER BY
내림차순 정렬 ORDER BY (정렬할 칼럼) DESC
A 이상 B 이하 BETWEEN A AND B
2개의 테이블에서 조회 INNER JOIN
조인 룰 ON (EX. emp.deptId = dept.id -> emp의 deptId와 dept의 id 값이 같은 경우만 가져옴)
칼럼명 변경 AS
AS는 테이블에도 적용 가능하다.
SELECT E.id AS `사원번호`,
E.name AS `사원명`,
DATE(E.regDate) AS `입사일`,
D.name AS `부서명`
FROM emp AS E
INNER JOIN dept AS D
ON E.deptId = D.id
ORDER BY `부서명`, `사원명`;