본문 바로가기
○ WEB/19.07 BoostCourse_DB연결 웹앱

6-2 DML

by 0ver-grow 2019. 7. 18.
반응형

< DML(select, insert, update, delete) >


DML (Data Manipulation Language): 데이터 조작용 언어 > 
예시 : INSERT, UPDATE, DELETE, SELECT 등

 

< 키워드 > 

insert : 등록

select : 검색

update : 수정

delete : 삭제

 

select 구문의 기본문형

SELECT(DISTUNCT) 칼럼명(ALIAS)
FROM Table명;
SELECT 검색할 데이터(칼럼) 나열
DISTINCT 중복행 제거
ALIAS 나타날 컬럼에 대한 다른 이름 부여
FROM 선택한 칼럼이 있는 테이블 명시

 

SELECT 구문 사용하기

*는 모든 데이터를 찾을 때 사용한다

예시 : SELECT * FROM DEPARTMENT;

 

SELECT 구문 예제 (특정 칼럼 검색)

  • SELECT 뒤에 컬럼을 콤마(,)로 구별해서 나열

예제 : employee 테이블에서 직원의 사번(empno), 이름(name), 직업(job)을 출력하시오.

어떤 칼럼이 있는지는 desc명령으로 확인

mysql > select empno, name, job from employee;

SELECT 구문 예제(컬럼에 Alias부여하기)

  • 컬럼에 대한 ALIAS(별칭)을 부여해서 나타내는 칼럼의 HEADING을 변경할 수 있다.

예제 : employee 테이블에서 직원의 사번(empno), 이름(name), 직업(job)을 출력하시오.

mysql > select empno as 사번, name as 이름, job as 직업 from employee;

SELECT 구문 예제(컬럼의 합성(Concatenation))

  • 문자열 결합함수 concat 사용

예제 : employee 테이블에서 사번과 부서번호를 하나의 칼럼으로 출력하시오.

mysql > select concat(empno, '-', deptno) AS '사번-부서번호'

        -> FROM employee;

SELECT 구문 예제(중복행의 제거)

  • 중복되는 행이 출력되는 경우, DISTINCT 키워드로 중복행을 제거

예제1 : 사원 테이블의 모든 부서번호 출력하시오. (사원 수 만큼 출력된다.)

mysql > select deptno from employee;

 

예제2 : 사원 테이블의 부서번호를 중복되지 않게 출력하시오.

mysql > select distinct deptno from employee;

 

SELECT 구문 예제(정렬하기)

 

ORDER BY 절

select(distinct) 칼럼명(ALIAS)

FROM 테이블명

ORDER BY 칼럼이나 표현식 (ASC 또는 DESC);

 

ASC 오름차순 정렬, 기본값
DESC 내림차순

SELECT 구문 예제(정렬하기)

예제 : employee 테이블에서 직원의 사번(empno), 이름(name), 직업(job)을 출력하시오.

단, 이름을 기준으로 오름차순 정렬합니다.

mysql > select empno, name, job from employee order by name;

mysql > select empno as 사번, name as 이름, job as 직업 from employee order by 이름;

반응형