[DML] 데이터조작어 SELECT, INSERT, UPDATE, DELETE

·2022년 12월 20일
0

MySQL

목록 보기
6/8

[DML] 데이터조작어
데이터를 조회/수정/삭제를 위한 데이터 관리하는데 사용


SELECT

생성되어 있는 테이블에서 원하는 값을 선택하여 가져오고 싶을 때 사용하는 명령어

전체 조회

-- 기본 선택 명령어 : 테이블에서 모두 가져오기
select * from 테이블;

select * from userTable

일부 칼럼 조회

-- 일부 칼럼 조회 명령어
select 칼럼1 [, 칼럼2, 칼럼3] from 테이블;

-- userTable 테이블에서 memberId 칼럼 조회
select memberId from userTable;

칼럼에 별싱을 설정하여 조회

-- 일부 칼럼 조회 명령어
select 칼럼1 [, 칼럼2, 칼럼3] from 테이블;

-- userTable 테이블에서 memberId 칼럼 조회
select memberId from userTable;

특정 조건에 만족하는 데이터 조회

-- 특정 조건에 만족하는 데이터 조회
select 칼럼1 from 테이블 where 조건식;

-- userTable 테이블에서 memberName이 '홍길동'인 칼럼의 memberId, pwd를 조회
select memberId, pwd from userTable where memberName = '홍길동';

-- userTable 테이블에서 memberName이 동으로 끝나는 칼럼 모두 조회
select * from userTable where memberName like '%동';

-- userTable 테이블에서 memberName 컬럼을 오름차순으로 정렬하여 조회 (asc 생략 가능)
select * from userTable order by memberName;
select * from userTable order by memberName asc;

-- userTable 테이블에서 memberName 컬럼을 내림차순으로 정렬하여 조회
select * from userTable order by memberName desc;

-- userTable 테이블에서 여러 칼럼을 정렬하여 조회 (우선순위 memberId > memberName)
select * from userTable order by memberId, memberName;

INSERT

테이블에 원하는 값을 삽입하는 기능을 가진 명령어

  • 테이블이름, 칼럼명, 입력할 데이터순으로 입력
  • 데이터를 입력할 때 입력할 데이터가 문자열인 경우 작은따옴표를 사용
  • 모든 칼럼에 데이터를 넣을 경우 칼럼명 생략 가능
/* userTable 예시 
create table userTable(
	idx        int primary key auto_increment,
	memberId   varchar(15) not null,
  pwd        varchar(255) not null,
  memberName varchar(20) not null,
	age        int(2)
);
*/

insert into 테이블이름 (칼럼명1, 칼럼명2, 칼럼명3) valuse (값1, 값2, 값3);

insert into userTable (memberId, pwd, memberName) valuse ('admin', '1234', '홍길동');

-- 모든 칼럼에 데이터 넣을때 칼럼명 생략
insert into userTable valuse ('admin', '1234', '홍길동', 20);

-- 여러 데이터를 한번에 입력 가능
insert into userTable valuse 
('manager1', '1234', '직원1', 20),
('manager2', '1234', '직원2', 20);

UPDATE

생성되어 있는 테이블에 삽입되어 있는 값을 수정해주는 기능을 가진 명령어

  • 데이터 수정 시 조건이 없으면 모든 데이터가 반영됨
  • 일부 데이터를 수정 할 때 where(조건)을 입력해 주어야 함
  • 여러 데이터를 수정 시 ,(콤마)로 구분
/* userTable 예시 
create table userTable(
	idx        int primary key auto_increment,
	memberId   varchar(15) not null,
  pwd        varchar(255) not null,
  memberName varchar(20) not null,
	age        int(2)
);
*/

update 테이블명 set 컬럼1 = 수정값1;

-- 테이블 데이터 전체 수정
update userTable set memberName = '고길동';

-- 테이블 데이터의 일부 수정
update userTable set memberName = '고길동' where memberId = 'admin';

-- 여러개 수정시 콤마로 구분
update userTable set memberName = '고길동', pwd = '1111';

DELETE

생성되어 있는 테이블에 삽입 되어 있는 값을 삭제해주는 기능을 가진 명령어

  • 데이터 삭제 시 조건이 없으면 모든 데이터가 반영됨
  • 일부 데이터를 삭제 할 때 where(조건)을 입력해 주어야 함
  • 여러 데이터를 삭제 시 ,(콤마)로 구분
/* userTable 예시 
create table userTable(
	idx        int primary key auto_increment,
	memberId   varchar(15) not null,
  pwd        varchar(255) not null,
  memberName varchar(20) not null,
	age        int(2)
);
*/

delete from 테이블명 [where 조건];

-- 테이블 데이터 전체 삭제
delete from userTable;

-- 테이블 데이터의 일부 삭제
delete from userTable where memberId = 'manager2'

출처 : https://kkamikoon.tistory.com/entry/MySQL-DML-명령어-사용하는-방법SELECT-INSERT-UPDATE-DELETE

profile
열심히 기록

0개의 댓글