사이먼's 코딩노트
[DB] 기본 쿼리 종류 본문
[데이터베이스 구조]
- 데이터베이스는 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합이다.
- 데이터베이스 안에는 여러 테이블들을 존재한다. 테이블이란 행과 열로 구성된 데이터의 모음이다.
- 예를 들어, 회원 테이블의 구조를 생각하면 회원번호, ID, PW, 이름, 이메일, 성별 등의 개인정보들이 각 column이 된다.
- row에는 각 하나의 회원 정보가 input 되어있다.
- 그리고 테이블을 구성하는 각 column들은 Primary Key(PK)와 Foreign Key(FK)로 나눌 수 있다.
- PK는 기본키로써 회원번호와 같은 각 테이블마다 존재하는 고유의 id를 의미한다.
- FK는 외래키로써 서로 다른 테이블 간에 관계를 성립시키는 id를 의미한다.
- 보다 자세한 구조는 진행하면서 추가 설명할 예정이며, 위의 기본적인 구조만으로 데이터베이스의 기초를 다져봅시다.
[기본 쿼리 종류]
- DB를 관리하기 위해선 쿼리 명령어를 사용한다.
- 쿼리란 데이터베이스 정보를 요청하거나 조작하기위한 명령어라고 생각하면 좋다.
- 다음은 몇 가지 기본 쿼리에 대해서 살펴봅시다.
- 전체 데이터베이스 리스팅
SHOW DATABASES;
- 데이터베이스 선택
use 데이터베이스_이름;
- 기존에 특정 데이터베이스가 존재하는지 확인하고, 존재하면 삭제
- 확인 없이 삭제하고 싶다면 IF EXISTS를 빼고 실행하면 된다.
DROP DATABASE IF EXISTS 데이터베이스_이름;
- 새 데이터베이스 생성
CREATE DATABASE 데이터베이스_이름;
- 새 테이블 생성
- 각 컬럼명 뒤에 오는 컬럼 타입은 INT, VARCHAR, TEXT 같은 타입을 뜻한다.
- 여러개의 컬럼을 생성하고 싶다면 , 를 붙혀 연속해서 작성하면 된다.
CREATE TABLE 테이블_이름 (컬럼명 컬럼_타입);
- 테이블 삭제
DROP TABLE 테이블_이름;
- 새 데이터 추가
- 컬럼이 여러개 있을 경우 컬럼 개수에 맞춰 ,를 붙혀 연속해서 작성하면 된다.
INSERT INTO 테이블_이름 SET 컬럼명 = 값;
- 테이블 데이터 전체 조회
- 만약 원하는 컬럼만 조회하고 싶다면 * 대신 컬럼 이름을 작성한다.
- 만약 조건을 추가하고 싶다면 마지막에 where을 써준다.
SELECT * FROM 테이블_이름 WHERE 조건;
- 기존 데이터 수정
- 만약 조건을 추가하고 싶다면 마지막에 where을 써준다.
UPDATE 테이블_이름 SET 컬럼명 = 바꾸고_싶은_컬럼값 WHERE 조건;
- 기존 데이터 삭제
- 만약 조건을 추가하고 싶다면 마지막에 where을 써준다.
DELETE FROM 테이블_이름 WHERE 조건;
- 테이블에 컬럼 추가 (구조 수정)
- 각 컬럼명 뒤에 오는 컬럼 타입은 INT, VARCHAR, TEXT 같은 타입을 뜻한다.
ALTER TABLE 테이블_이름 ADD COLUMN 컬럼명 컬럼_타입;
- 테이블에 있는 컬럼 수정 (구조 수정)
- 각 컬럼명 뒤에 오는 컬럼 타입은 INT, VARCHAR, TEXT 같은 타입을 뜻한다.
ALTER TABLE 테이블_이름 MODIFY COLUMN 컬럼명 컬럼_타입;
- 테이블에 있는 컬럼 삭제 (구조 수정)
ALTER TABLE 테이블_이름 DROP COLUMN 컬럼명;
- 테이블에 Primary key 속성 추가 (구조 수정)
ALTER TALBE 테이블_이름 ADD PRIMARY KEY(PK_적용할_컬럼명);
- 다음은 조건에 맞춰서 테이블을 조회하는 방법이다.
SELECT * FROM 테이블_이름 ORDER BY 컬럼명;
- 다음은 특정 컬럼이 '!!'로 시작하는 테이블을 조회하는 방법이다.
SELECT * FROM 테이블_이름 WHERE 컬럼명 LIKE '!!%';
- 다음은 특정 컬럼의 값이 10 이상 55 이하인 테이블을 조회하는 방법이다.
SELECT * FROM 테이블_이름 WHERE 컬럼명 >= 10 AND 컬럼명 <= 55;
- 다음은 특정 컬럼의 값이 '무명'이 아니고 다른 컬럼의 값이 50 이하인 테이블을 조회하는 방법이다.
SELECT * FROM 테이블_이름 WHERE 컬럼명_1 != '무명' AND 컬럼명_2 <= 50;
- 마지막으로 특정 컬럼의 값이 '무명' 이거나 다른 컬럼의 값이 55 이상인 테이블을 조회하는 방법이다.
SELECT * FROM 테이블_이름 WHERE 컬럼명_1 = '무명' OR 컬럼명_2 >= 55;
반응형
'데이터베이스(DB)' 카테고리의 다른 글
[DB] 문제풀이 (0) | 2024.03.28 |
---|---|
[DB] GROUP BY, UNION (0) | 2024.03.28 |
[DB] 조인(JOIN) (0) | 2024.03.28 |
[DB] MySQL 설치 및 기본 세팅 (0) | 2024.03.27 |