[SQL] SELECT, INSERT, UPDATE, DELETE, ORDER BY, WHERE

박미영·2023년 4월 11일
0

데이터 조작어 - SELECT, INSERT, UPDATE, DELETE


📌INSERT(데이터 추가)

  • 데이터를 추가하는 명령어
  • 입력한 컬럼 이름의 순서와 값의 순서가 일치하도록 주의
INSERT INTO tablename (column1, column2, ...)
VALUES (value1, value2, ...);

  • 모든 컬럼값을 추가하는 경우
    모든 컬럼값을 추가하는 경우에는 다음과 같이 컬럼 이름을 지정하지 않아도 되지만, 입력하는 값의 순서가 테이블의 컬럼 순서와 일치하도록 주의
INSERT INTO tablename
VALUES (value1, value2, ...);



📌SELECT(데이터 조회)

  • 데이터를 조회하는 명령어

- 특정 칼럼 데이터 조회

테이블 내의 특정 칼럼에 대한 데이터를 조회

SELECT column1, column2, ... 
FROM tablename;

- 모든 컬럼

테이블 내의 모든 컬럼에 대한 데이터를 조회

SELECT *
FROM tablename;



📌WHERE - SELECT

  • 테이블 내에서 조건을 만족하는 데이터 조회(SQL문에 조건 추가)
SELECT column1, column2, ... 
FROM tablename
WHERE condition;



📌UPDATE(데이터 수정)

  • 데이터를 수정하는 명령어
UPDATE tablename 
SET column1 = value1, column2 = value2, ...
WHERE condition;



📌DELETE(데이터 삭제)

  • 데이터를 삭제하는 명령어
DELETE FROM tablename
WHERE condition



📌ORDER BY

  • SELECT 문에서 데이터를 특정 컬럼을 기준으로 오름차순 혹은 내림차순 정렬하여 조회
  • ASC(Ascending): 오름차순 정렬
  • DESC(Descending): 내림차순 정렬
 SELECT column1, column2, ... 
    -> FROM tablename
    -> ORDER BY column1, column2, ... ASC | DESC;






📌데이터 조작어 예제

📍실습환경 만들기

- 데이터베이스 생성 및 이동

create database zerobase;
USE zerobase;

- table 생성

CREATE TABLE person
(
	id int,
	name varchar(16),
	age int,
	sex char
);




📍INSERT 예제

  • ID 값이 1인 이효리, 43세, 여자(F) 데이터 추가
INSERT INTO person (id, name, age, sex)
    -> VALUES (1, '이효리', 43, 'F');
  • 모든 컬럼값을 추가하는 경우
INSERT INTO person
VALUES (2, '이상순', 48, 'M');



📍SELECT 예제

  • person 테이블 내의 이름, 나이, 성별 데이터를 조회
SELECT name, age, sex FROM person;



  • person 테이블 내의 모든 컬럼에 대한 데이터를 조회
 select * from person;



📍WHERE - SELECT 예제

  • person 테이블에서 성별이 여자인 데이터 조회
SELECT * FROM person WHERE sex='F';


  • person 테이블에 나이가 50세인 데이터를 조회
Select * from person where age = 50;



📍UPDATE 예제

  • person 테이블에서 이효리 나이를 23세로 수정
UPDATE person SET age=23 WHERE name='이효리';



  • person 테이블에서 유재석의 성별을 남자(M)로 수정
UPDATE person SET sex='F' WHERE name='유재석';



  • person 테이블에서 ID가 2번인 데이터의 이름을 이미주로 수정
UPDATE person SET name='이미주' WHERE id=2;

2번인 이상순 데이터가 이미 삭제되었기 때문에 수정할 데이터가 없다.



📍DELETE 예제

  • name이 이상순인 데이터 삭제
DELETE FROM person WHERE name='이상순';



  • person 테이블에서 성별이 여자인 데이터를 삭제
DELETE FROM person WHERE sex='F';



📍테이블 삭제

person 테이블을 삭제

DROP TABLE person;




📌ORDER BY 예제

📍실습환경 만들기

- 데이터베이스 생성 및 이동

create database zerobase;
USE zerobase;

- table 생성

CREATE TABLE celeb
(
	ID int NOT NULL AUTO_INCREMENT PRIMARY KEY,
	NAME varchar(32) NOT NULL DEFAULT '',
	BIRTHDAY date,
	AGE int,
	SEX char(1),
	JOB_TITLE varchar(32),
	AGENCY varchar(32)
);



- table 정보 확인

DESC celeb;



- 데이터 추가

INSERT INTO celeb VALUES (1, '아이유', '1993-05-16', 29, 'F', '가수, 연기자', 'EDAM엔터테이먼트');
INSERT INTO celeb VALUES (2, '이미주', '1994-09-23', 28, 'F', '가수', '안테나');
INSERT INTO celeb VALUES (3, '송강', '1994-04-23', 28, 'M', '연기자', '나무엑터스');
INSERT INTO celeb VALUES (4, '강동원', '1981-01-18', 41, 'M', '연기자', 'YG엔터테이먼트');
INSERT INTO celeb VALUES (5, '유재석', '1972-08-14', 50, 'M', 'MC, 개그맨', '안테나');
INSERT INTO celeb VALUES (6, '차승원', '1970-06-07', 48, 'M', '영화배우, 모델', 'YG엔터테이먼트');
INSERT INTO celeb VALUES (7, '이수현', '1999-05-04', 23, 'F', '가수', 'YG엔터테이먼트');



📍ORDER BY 예제1

  • celeb 테이블에서 이름과 나이를 나이순으로 조회
 SELECT age, name
    -> FROM celeb
    -> ORDER BY age ASC;



📍ORDER BY 예제2

  • celeb 테이블에서 이름과 나이를 나이의 역순(내림차순)으로 조회
SELECT age, name
FROM celeb
ORDER BY age DESC;



📍ORDER BY 예제3

  • celeb 테이블에서 이름과 나이를 나이와 이름순으로 정렬하여 조회 (ASC 를 생략해도 기본은 오름차순 정렬)
SELECT age, name
FROM celeb
ORDER BY age, name;



📍ORDER BY 예제4

  • celeb 테이블에서 이름과 나이를 나이의 역순으로 정렬한 뒤 이름순으로 정렬하여 조회
SELECT age, name
FROM celeb
ORDER BY age DESC, name ASC;



📍ORDER BY 예제5

  • celeb 테이블에서 이름, 생년월일, 성별, 소속자 데이터를 소속사 순으로 정렬하여 조회
SELECT NAME, BIRTHDAY, SEX, AGENCY
FROM celeb
ORDER BY AGENCY;



📍ORDER BY 예제6

  • celeb 테이블에서 전체 컬럼을 소속사, 이름 순으로 정렬하여 조회
SELECT *
FROM celeb
ORDER BY AGENCY, NAME;



📍ORDER BY 예제7

  • celeb 테이블에서 이름, 나이, 직업, 소속사 데이터를 소속사 순, 나이 역순으로 정렬하여 조회
SELECT NAME, AGE, JOB_TITLE, AGENCY
FROM celeb
ORDER BY AGENCY ASC, AGE DESC;




"이 글은 제로베이스 데이터 취업 스쿨 강의를 듣고 작성한 내용으로 제로베이스 데이터 취업 스쿨 강의 자료 일부를 발췌한 내용이 포함되어 있습니다."

0개의 댓글