반응형

 

[SQL] SELECT, INSERT, UPDATE, DELETE 사용예제 (검색, 등록, 수정, 삭제)

 

 

SQL 명령어는 기능에 따라서 DDL(Data Definition Language). DML(Data Manipulation Language), DCL(Data Control Language)로 나뉘어 집니다. 

  • DDL은 데이터 정의어로 CREATE, ALTER, DROP등의 명령어로 데이터베이스나 테이블을 생성, 수정, 삭제합니다.
  • DML은 데이터 조작어로 SELECT, INSERT, UPDATE, DELETE등의 명령어로 데이터를 조회, 삽입, 수정, 삭제합니다. 
  • DCL은 데이터 제어어로 GRANT, REVOKE 등의 명령어로 데이터베이스의 접근 및 권한을 부여합니다.

여기서는 데이터를 조작에 사용되는 DML 명령어에 대해서 알아보도록 하겠습니다. 

 

 

    목차

  1. SELECT 사용예제 - 데이터 조회
  2. INSERT 사용예제 - 데이터 삽입
  3. UPDATE 사용예제 - 데이터 수정
  4. DELETE 사용예제 - 데이터 삭제

 

1. SELECT 사용 예제 - 데이터 조회

 

1) SELECT * FROM usertable;   // usertable에서 모든 데이터 출력하기


2) SELECT name, age FROM usertable;   // usertable에서 name, age 컬럼 출력하기


3) SELECT DISTINCT name FROM usertable;    // 데이터 중복제거시 DISTINCT 사용


4) SELECT * FROM usertable ORDER BY age;   // age를 기준으로 오름차순 정렬


5) SELECT * FROM usertable ORDER BY age DESC;   // age를 기준으로 내림차순 정렬

 

6) SELECT * FROM usertable WHERE name = 'jane';   // name이 jane인 데이터 출력

 

7) SELECT * FROM usertable WHERE age < 20;   // age가 20미만인 데이터 출력

 

8) SELECT * FROM usertable WHERE age >= 10 AND age <= 20;   // age가 10이상, 20이하인 데이터 출력

 

9) SELECT * FROM usertable WHERE age IN (10, 20);   // age가 10 또는 20인 데이터 출력

 

10) SELECT * FROM usertable WHERE name LIKE '%a%';   // name에 'a' 단어가 포함된 데이터 출력

 

11) SELECT grade, count(grade) as cnt  FROM usertable GROUP BY grade;   // 동일 grade그룹별 데이터 개수 출력

  • count( )는 데이터 개수를 출력함  (ex, SUM( ), MIN( ), MAX( ) ...)
  • count(grade) as cnt 는 COUNT(grade)를 cnt라는 별칭으로 사용하게 함

 

12) SELECT grade, count(grade) as cnt  FROM usertable GROUP BY grade HAVING count(grade) >= 3;   // 동일grade그룹별 데이터 개수가 3이상인 값만 출력

 

13) SELECT * FROM usertable1 JOIN usertable2 ON usertable1.name = usertable2.name;   // usertable1의 name과 usertable2의 name이 서로 일치하는 데이터를 출력

  • JOIN (= INNER JOIN) : 두 테이블을 연결후, 양쪽 테이블에 해당 컬럼이 모두 존재하는 데이터만 출력
  • LEFT OUTER JOIN : 두 테이블을 연결후, 왼쪽 테이블의 모든 데이터 출력
  • RIGHT OUTER JOIN : 두 테이블을 연결후, 오른쪽 테이블의 모든 데이터 출력
  • FULL OUTER JOIN : 두 테이블을 연결후, 양쪽 테이블의 모든 데이터 출력

 

 

 

2. INSERT 구문 예제 - 데이터 삽입

 

1) INSERT INTO usertable(name, age) VALUES ('james', 20) ;   // usertable에 name은 james, age는 20인 데이터 삽입

 

 

 

 

3. UPDATE 구문 예제 - 데이터 수정

 

1) UPDATE usertable SET age=30 WHERE name='james';   // usertable에 james의 age를 30으로 변경

 

 

 

 

4. DELETE 구문 예제 - 데이터 삭제

 

1) DELETE FROM usertable WHERE name='james';   // usertable에 name이 james인 데이터를 삭제

 

반응형

+ Recent posts