[SQL] SELECT / INSERT / UPDATE / DELETE / ORDER BY

jane05·2023년 10월 29일
0
post-thumbnail

0️⃣ 실습 환경 만들기

use zerobase;

create table person
(
  id int,
  name varchar(16),
  age int,
  sex CHAR
);

desc person;

1️⃣ INSERT

  • 입력한 컬럼 이름의 순서와 값의 순서가 일치하도록 주의
insert into person (id, name, age, sex)
values (1, '이효리', 43, 'F');
  • 모든 컬럼값을 추가하는 경우
    - 모든 컬럼값을 추가하는 경우에는 다음과 같이 컬럼 이름을 지정하지 않아도 되지만, 입력하는 값의 순서가 테이블의 컬럼 컬럼 순서와 일치하도록 주의
insert into person
values (2, '이상순', 48, 'M');

2️⃣ SELECT

  • 테이블 내의 특정 컬럼에 대한 데이터를 조회
select name, age, sex from person;
select *
from person;

3️⃣ WHERE - 조건

  • SQL문에 조건을 추가하며 SELECT 뿐만 아니라 UPDATE와 DELETE에도 사용
  • 테이블 내에서 조건을 만족하는 데이터 조회
select * from person where sex='F';

4️⃣ UPDATE

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

5️⃣ DELETE

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

6️⃣ ORDER BY

  • SELECT 문에서 데이터를 특정 컬럼을 기준으로 오름차순 혹은 내림차순 정렬하여 조회

  • 실습 테이블 생성

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)
);
DESC celab;
  • 실습할 데이터 추가
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엔터테이먼트');
  • 확인
select * from celeb;

- ASC: 오름차순으로 정렬 - DESC: 내림차순으로 정렬
  • celeb 테이블에서 이름과 나이를 나이순으로 조회
select age, name
from celeb
order by age asc;
  • celeb 테이블에서 이름과 나이를 나이의 역순으로 조회
select age, name
from celeb
order by age desc;
  • celeb 테이블에서 이름과 나이를 나이와 이름순으로 정렬하여 조회 (기본은 오름차순 정렬)
select age, name
from celeb
order by age, name;
  • celeb 테이블에서 이름과 나이를 나이의 역순으로 정렬한 뒤 이름순으로 정렬하여 조회
select age, name
form celeb
order by age desc, name asc;
profile
데이터 분석 공부 기록

0개의 댓글