[제로베이스][SQL] 테이블 데이터 조작

한결·2024년 1월 22일
post-thumbnail

준비하기

mysql> create table person
    -> (
    -> id int,
    -> name varchar(16),
    -> age int,
    -> sex char
    -> );
mysql> desc person;


INSERT

insert를 이용해 데이터를 추가할 수 있습니다.
insert into tablename (column1, column2, ...)
values (value1, value2, ...);

mysql> insert into person (id, name, age, sex)
    -> values(1, '이효리', 43, 'F');

mysql> select * from person;

❗️모든 컬럼값을 추가하는 경우에는 다음과 같이 컬럼 이름을 지정하지 않아도 되지만, 입력하는 값의 순서가 테이블의 컬럼 순서와 일치하도록 주의!


mysql> insert into person
    -> values(2,'이상순',48,'M');

mysql> select * from person;


SELECT

테이블 내의 특정 칼럼에 대한 데이터를 조회
select column1, column2, ...
from tablename;

mysql> select name, age, sex from person;


mysql> select * from person;


테이블 내에서 조건을 만족하는 데이터 조회
select column1, column2, ...
from tablename;
where condition;

mysql> select * from person where sex='F';


UPDATE

데이터를 수정
update tablename
set column1 = value1, column2 = value2, ...
where condition;

mysql> update person set age=23 where name='이효리';

mysql> select * from person where name = '이효리';


DELETE

데이터 삭제
delete from tablename
where condition;

mysql> delete from person where name = '이상순';

mysql> select * from person;


ORDER BY 실습 환경 준비

mysql> create table celeb
    -> (
    -> ID int not null AUTO_INCREMENT PRIMARY KEY,
    -> name varchar(32) not null default '',
    -> birthdaty date,
    -> age int,
    -> sex char(1),
    -> job_title varchar(32)
    -> ,
    -> agency varchar(32)
    -> );
    
mysql> desc celeb;


mysql> insert into celeb values(1, '아이유', '1993-05-16', 29, 'F', '가수, 탤런 트', 'EDAM엔터테인먼트');

mysql> insert into celeb values(2, '이미주', '1994-09-23', 28, 'F', '가수', '울 림엔터테인먼트');

mysql> insert into celeb values(3, '송강', '1994-04-23', 28, 'M', '탤런트', '나 무엑터스');

mysql> insert into celeb values(4, '강동원', '1981-01-18', 41, 'M', '영화배우,  탤런트', 'YG엔터테인먼트');

mysql> insert into celeb values(5, '유재석', '1972-08-14', 50, 'M', 'MC, 개그맨', '안테나');

mysql> insert into celeb values(6, '차승원', '1970-06-07', 48, 'M', '영화배우, 모델', 'YG엔터테인먼트');

mysql> insert into celeb values(7, '이수현', '1999-05-04', 23, 'F', '가수', 'YG 엔터테인먼트');

mysql> select * from celeb;


ORDER BY

SELECT 문에서 데이터를 특정 칼럼을 기준으로 오름차순 혹은 내림차순 정렬

  • ASC : 오름차순 정렬
  • DESC : 내림차순 정렬
    select column1, column2, ...
    from tablename
    order by column1, column2, ... ASC | DESC;

celeb 테이블에서 이름과 나이를 나이순으로 조회

mysql> select age, name from celeb order by age;


mysql> select age, name from celeb order by age desc;


celeb 테이블에서 이름과 나이를 나이와 이름순으로 정렬하여 조회

mysql> select age, name from celeb order by age, name;


profile
낭만젊음사랑

0개의 댓글