SQL응용과 소프트웨어 개발보안 구축
데이터 조작어 (DML)
SELECT
- 데이터 베이스에서 사용자가 원하는 조건에 부합하는 자료를 검색하여 가져오는 명령어 동작
형식
SELECT [DISTINCT | DISTINCTROW] 필드이름 [AS 별칭]
FROM 테이블 이름
[WHERE 조건식];
SQL 문에서는 대소문자를 구분하지 않음
마지막에 세미콜론";"을 입력해 문의 끝임을 알림
DISTINCT SELECT 문에 DISTINCT를 입력하면 검색의 결과가 중복되는 레코드는 검색시 한번만 표시된다
필드이름
: 테이블의 모든 필드를 검색할 경우에는 필드이름대신 "*"을 입력
특정필드들만 검색할 경우 ","로 구분
WHERE 조건식
: 조건을 입력하여 특정 조건에 맞는 레코드만 검색할 때 사용
SELECT 예시
조건식 연산자
산술 연산자 : +,-,*,/
관계 연산자 : >,<,>=,<=,=,<>(같지않다)
논리 연산자 : NOT, AND, OR
LIKE 연산자 : 대표문자(만능문자)를 이용 지정된 속성값이 부분적으로 일치하는 튜플을 검색(%=모든문자 의미)
정렬작업
형식
[ORDER BY 필드이름 정렬방식, ...]
정렬방식을 지정하지 않으면 기본적으로 오름차순(ASC)
정렬 예시
그룹지정 및 조건
[GROUP BY 필드이름]
[HAVING 그룹조건식]
그룹지정 및 조건 예시
함수 이용한 집계
AVG(필드명) - 평균계산
SUM(필드명) - 합계계산
COUNT(*) - 개수계산
MAX(필드명) - 최대값 계산
MIN(필드명) - 최소계산
ROLLUP(필드명1, 필드명2) - 필드 그룹별 소계를 계산
CUBE(필드명1, 필드명2) - 모든 조합의 그룹별 소계를 계산
함수 이용 집계 형식
문제 1
정답 : LIKE
문제 2
정답 : AND
문제 3
정답
SELECT code FROM 판매
WHERE AMOUNT BETWEEN 10 AND 20;
또는
SELECT code FROM 판매
WHERE AMOUNT>=10 AND AMOUNT<=20;
문제 4
정답
1. COUNT(*) AS
2. GROUP BY