사이먼's 코딩노트

[DB] 기본 쿼리 종류 본문

데이터베이스(DB)

[DB] 기본 쿼리 종류

simonpark817 2024. 3. 27. 11:53

[데이터베이스 구조]

  • 데이터베이스는 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합이다.
  • 데이터베이스 안에는 여러 테이블들을 존재한다. 테이블이란 행과 열로 구성된 데이터의 모음이다.
  • 예를 들어, 회원 테이블의 구조를 생각하면 회원번호, 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