다은하게

[SQL]3 - 5. 치환 변수 본문

오라클/SQL

[SQL]3 - 5. 치환 변수

DaaEun 2021. 8. 28. 14:21

■ 치환 변수

단일 앰퍼샌드(&) 및 이중 앰퍼샌드(&&) 치환을 사용하여 값을 임시로 저장한다.

치환 변수를 사용하여 다음을 보완할 수 있다.
WHERE 조건
• ORDER BY 절
• 열 표현식
테이블 이름
전체 SELECT 문

 

■ & 치환변수 사용

 변수 앞에 앰퍼샌드(&)를 붙여 유저에게 값을 요청한다.

SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num;  -- 유저에게 employee_num 변수 값 요청

 

유저에게 employee_num 변수 값 요청
employee_num = 101 입력
employee_id = 101 인 사원정보 출력

/* Query 결과 스크립트 출력 */

이전:SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = &employee_num

신규:SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE employee_id = 101

EMPLOYEE_ID LAST_NAME                     SALARY DEPARTMENT_ID
----------- ------------------------- ---------- -------------
        101 Kochhar                        17000            90

 

■ 문자 및 날짜 값에 치환변수 사용

SELECT last_name, department_id, salary*12
FROM employees
WHERE job_id = '&job_title';

 

유저에게 job_title 변수 값 요청
job_title = IT_PROG 입력
job_id = IT_PROG 인 사원정보 출력

/* Query 결과 스크립트 출력 */

이전:SELECT last_name, department_id, salary*12
FROM employees
WHERE job_id = '&job_title'

신규:SELECT last_name, department_id, salary*12
FROM employees
WHERE job_id = 'IT_PROG'

LAST_NAME                 DEPARTMENT_ID  SALARY*12
------------------------- ------------- ----------
Hunold                               60     108000
Ernst                                60      72000
Lorentz                              60      50400

 

■ 열 이름, 표현식 및 텍스트 지정

SELECT employee_id, last_name, job_id, &column_name -- column_name 치환변수
FROM employees
WHERE &condition    -- condition 치환변수
ORDER BY &order_column; -- order_column 치환변수

 

■ && 치환변수 사용

 유저가 매번 값을 입력하지 않고, 변수 값을 재사용하려는 경우 이중 앰퍼샌드(&&)를 사용한다.

SELECT employee_id, last_name, job_id, &&column_name    -- &&
FROM employees
ORDER BY &column_name;  -- &
-- column_name 변수 값 요청을 한 번만 한다.

 

column_name 변수 값을 한번만 요청

/* Query 결과 스크립트 출력 */

이전:SELECT employee_id, last_name, job_id, &&column_name
FROM employees
ORDER BY &column_name

신규:SELECT employee_id, last_name, job_id, department_id
FROM employees
ORDER BY department_id

EMPLOYEE_ID LAST_NAME                 JOB_ID     DEPARTMENT_ID
----------- ------------------------- ---------- -------------
        200 Whalen                    AD_ASST               10
        201 Hartstein                 MK_MAN                20
        202 Fay                       MK_REP                20
        144 Vargas                    ST_CLERK              50
        143 Matos                     ST_CLERK              50
        142 Davies                    ST_CLERK              50
        141 Rajs                      ST_CLERK              50
        124 Mourgos                   ST_MAN                50
        103 Hunold                    IT_PROG               60
        104 Ernst                     IT_PROG               60
        107 Lorentz                   IT_PROG               60

EMPLOYEE_ID LAST_NAME                 JOB_ID     DEPARTMENT_ID
----------- ------------------------- ---------- -------------
        174 Abel                      SA_REP                80
        176 Taylor                    SA_REP                80
        149 Zlotkey                   SA_MAN                80
        101 Kochhar                   AD_VP                 90
        100 King                      AD_PRES               90
        102 De Haan                   AD_VP                 90
        206 Gietz                     AC_ACCOUNT           110
        205 Higgins                   AC_MGR               110
        178 Grant                     SA_REP                  

20개 행이 선택되었습니다.

 Github.DaaEun - 3.데이터제한 및 정렬 예제 적용 바로가기

 

GitHub - DaaEun/Oracle

Contribute to DaaEun/Oracle development by creating an account on GitHub.

github.com


클라우드 데이터베이스 Oracle 12c 가이드

 

클라우드 데이터베이스 Oracle 12c 가이드 - 교보문고

★ 요약 ★이 책은 오라클(Oracle) 데이터베이스 12c에 새롭게 추가된 멀티테넌트 개념과 업그레이드된 보안, 백업, 지능화된 기능, 성능, 클러스트 기술, 데이터웨어하우스 기능, SQL, PL/SQL 및 옵티

www.kyobobook.co.kr

Oracle Database 12c New Features

Oracle Database 12c New Features
저자 : Freeman, Robert 
출판 : McGraw-Hill Education 
발매 : 2013년 12월 10일

 

Comments