DB(Database)
DBMS의 기능
연산자 | 설명 |
---|---|
NOT | 조건에 대한 반대 값으로 반환(NULL 예외) |
--EMAIL의 ID 중 앞 글자가 3글자이고 뒤에 _가 있는 직원의 이름 이메일
SELECT EMP_NAME, EMAIL FROM EMPLOYEE WHERE EMAIL LIKE '___#_%' ESCAPE '#';
SELECT EMP_NAME, DEPT_CODE FROM EMPLOYEE WHERE DEPT_CODE = 'D6' OR DEPT_CODE = 'D9';
SELECT EMP_NAME, DEPT_CODE FROM EMPLOYEE WHERE DEPT_CODE IN ('D6','D9');
작성법 | 리턴값 | 설명 |
---|---|---|
LENGTH(COL | STRING) | NUMBER | 컬럼의 값/문자열의 길이(문자 개수) 리턴 LENGTHB: Byte로 계산하여 출력 |
INSTR(STRING, STR, [POSITION], [OCCURRENCE]) | NUMBER | 문자(열)의 위치를 리턴 |
LPAD(STRING, N, [STR]) RPAD(STRING, N, [STR]) | CHARACTER | 컬럼/문자열에 임의의 문자열을 왼쪽/오른쪽에 붙여 총 길이 N의 문자열 리턴 |
LTRIM(STRING,STR) RTRIM(STRING,STR) | CHARACTER | 컬럼/문자열의 왼쪽/오른쪽에서 지정한 STR에 포함된 모든 문자를 제거한 나머지를 리턴 |
TRIM(STRING) TRIM(CHAR FROM STRING) TRIM(LEADING | TRAILING | BOTH [CHAR] FROM STRING) | CHARACTER | 컬럼/문자열의 지정한 위치에 지정한 한 글자를 제거한 나머지를 리턴 |
SUBSTR(STRING,POSITION, [LENGTH]) | CHARACTER | 컬럼/문자열에서 지정한 위치부터 지정한 개수(생략시 문자열 끝까지)의 문자열을 잘라내어 리턴 |
LOWER(STRING) UPPER(STRING) INITCAP(STRING) | CHARACTER | 컬럼/문자열을 소문자/대문자/첫글자만 대문자 형태로 변환하여 리턴 |
CONCAT(STRING,STRING) | CHARACTER | 컬럼 혹은 문자열을 두 개 전달받아 하나로 합친 후 리턴 3개 이상의 컬럼/문자열을 결합할 경우 || 사용을 권장 |
REPLACE(STRING, STR1, STR2) | CHARACTER | 컬럼/문자열에 변경할, 변경될의 문자열 값을 전달받아 변경 후 리턴 |
ABS(NUMBER) | NUMBER | 숫자의 절대값 리턴 |
MOD(NUMBER,DIVISION) | NUMBER | 숫자를 나누어 나머지를 리턴 |
ROUND(NUMBER) ROUND(NUMBER, POSITION) | NUMBER | 지정한 위치 이후 반올림하여 값을 리턴 |
CEIL(NUMBER) | NUMBER | 소수점 자리의 수 올림하여 정수 리턴 |
FLOOR(NUMBER) | NUMBER | 소수점 자리의 수 버리고 정수 리턴 |
TRUNC(NUMBER, POSITION) | NUMBER | 지정한 위치 이후 소수점 자리의 수를 버리고 리턴 |
SYSDATE | DATE | 시스템에 저장되어 있는 현재 날짜 리턴 ※ 그외 현재 시각 명령어들 CURRENT_DATE, LOCALTIMESTAMP, CURRENT_TIMESTAMP |
MONTHS_BETWEEN(DATE1, DATE2) | NUMBER | 날짜 두 개의 개월 수의 차이를 리턴 계산시 해당 월의 끝 날짜까지 계산 |
ADD_MONTHS(DATE, NUMBER) | DATE | 날짜에 숫자만큼 개월 수를 더하여 특정 날짜 리턴 |
NEXT_DAY(DATE, STRING [OR NUMBER]) | DATE | 날짜에 인자로 전달받은 요일 중 가장 가까운 요일의 날짜 출력 (문자열: '월' '월요일'.. / 숫자: 1=일요일,...7=토요일) |
LAST_DAY(DATE) | DATE | 날짜가 속한 달의 마지막 날짜를 구하여 리턴 |
EXTRACT(YEAR FROM DATE) EXTRACT(MONTH FROM DATE) EXTRACT(DAY FROM DATE) | DATE | 년, 월, 일 정보를 추출하여 리턴 |
INSTR
LPAD
작성법 | 설명 |
---|---|
DECODE(표현식,조건1,결과1,조건2,결과2,...[조건없는 결과(DEFAULT)] ) | 표현식의 값과 일치하는 조건N의 결과N 리턴 (일치하는 값) (Java의 Switch문과 유사) |
SELECT DECODE(SUBSTR(EMP_NO,8,1), 1, '남', 2, '여') AS "성별" FROM EMPLOYEE;
작성법 | 설명 |
---|---|
CASE WHEN 조건1 THEN 결과1 WHEN 조건2 THEN 결과2 WHEN 조건3 THEN 결과3 ELSE 결과N END | 여러가지 경우에서 선택을 할 수 있는 기능을 제공. (범위형태의 값도 가능) |