SQL 34

자동 데이터 타입 변환

SQL문을 조작할 때 오라클 데이터베이스 시스템은 특정한 경우에 데이터 타입을 자동으로 변환합니다. 예를 들어 오라클 데이터베이스 시스템에 VARCHAR2 타입으로 입력되어 있는 데이터 값 100은 NUMBER 타입으로 자동 변환되어 산술 계산될 수 있고, 숫자 타입 데이터 값 100은 VARCHAR2 타입으로 자동 변환되어 저장될 수 있습니다. 이런 경우 데이터 타입을 목표(target) 값의 데이터 타입으로 변환할 수 있는 경우에만 SQL 문이 올바르게 수행됩니다. 혜를 들어 문자열을 숫자로 나타낼 수 있는 경우헤만 VARCHAR2 타입이 NUMBER 타입으로 변환되며, 문자열이 데이터베이스 시스템에 설정된 날짜 데이터 타입과 같은 경우에만 VARCHAR2 타입이 DATE 타입으로 변환됩니다. 자동 ..

STUDY/SQL 2021.04.19

ROUND, TRUNC : 날짜를 반올림하거나 절삭하기

ROUND는 지정된 값을 기준으로 반올림하는 함수고 TRUNC는 지정 값을 기준으로 월 또는 연도로 절삭하는 함수입니다.ROUND 함수를 사용하면 날짜를 가장 가까운 월 또는 연도로 반올림할 수 있습니다. [사용법]ROUND or TRUNC(날짜, 지정 값)예시> employees 테이블에서 employee_id가 100과 106사이인 직원의 hire_date에 대해 월 기준 반올림, 연 기준 반올림, 월 기준 절삭, 연 기준 절삭을 적용하여 출력하세요. [실행문]SELECT hire_date, ROUND(hire_date, 'MONTH') 적용결과_ROUND_M, ROUND(hire_date, 'YEAR') 적용결과_ROUND_Y, TRUNC(hire_date, 'MONTH') 적용결과_TRUNC_M,..

STUDY/SQL 2021.04.09

LAST_DAY : 돌아오는 월의 마지막 날짜 계산하기

LAST_DAY는 월의 마지막 날짜를 계산해서 출력하는 함수입니다. [사용법]LAST_DAY(날짜) 예시> employees 테이블에서 employee_id가 100과 106 사이인 직원의 hire_date에서 가장 가까운 금요일의 날짜가 언제인지 문자로 지정해서 출력하고, 숫자로도 지정해서 출력하세요. [실행문]SELECT hire_date, LAST_DAY(hire_date) 적용결과 FROM employees WHERE department_id BETWEEN 100 AND 106; [실행결과]

STUDY/SQL 2021.04.08

NEXT_DAY : 돌아오는 요일의 날짜 계산하기

NEXT_DAY는 지정된 요일의 돌아오는 날짜가 언제인지 계산하는 함수입니다. 문자로 '일요일', '월요일'과 같이 요일을 기술하면 됩니다. 숫자로 일요일은 1, 월요일은 2와 같이 기술할 수도 있습니다. [사용법]NEXT_DAY(날짜, '요일' or 숫자)예시> employees 테이블에서 employee_id가 100과 106 사이인 직원의 hire_date에서 가장 가까운 금요일의 날짜가 언제인지 문자로 지정해서 출력하고, 숫자로도 지정해서 출력하세요. [실행문]SELECT hire_date, NEXT_DAY(hire_date, '금요일') 적용결과_문자지정, NEXT_DAY(hire_date, 6) 적용결과_숫자지정 FROM employees WHERE department_id BETWEEN 10..

STUDY/SQL 2021.04.07

ADD_MONTHS : 월에 날짜 더하기

ADD_MONTHS는 날짜에 월을 빼거나 더하는 함수입니다. 결과는 날짜 타입으로 출력됩니다. [사용법]ADD_MONTHS(날짜, 숫자) 예시> employees 테이블에서 employee_id가 100과 106 사이인 직원의 hire_date에 3개월을 더한 값, hire_date에 3개월을 뺀 값을 출력하세요. [실행문]SELECT hire_date, ADD_MONTHS(hire_date, 3) 더하기_적용결과, ADD_MONTHS(hire_date, -3) 빼기_적용결과 FROM employees WHERE department_id BETWEEN 100 AND 106; [실행결과]

STUDY/SQL 2021.04.06

MONTH_BETWEEN : 두 날짜 사이의 개월 수 계산하기

MONTH_BETWEEN 함수는 날짜와 날짜 사이의 개월 수를 계산합니다. 결과는 음수나 양수가 될 수 있습니다. [사용법] MONTH_BETWEEN(날짜, 날짜) 예시> employees 테이블에서 department_id가 100인 직원에 대해 오늘 날짜, hire_date, 오늘 날짜와 hire_date 사이의 개월 수를 출력하세요. [실행문] SELECT SYSDATE, hire_date, MONTHS_BETWEEN(SYSDATE, hire_date) 적용결과 FROM employees WHERE department_id = 100; [실행결과]

STUDY/SQL 2021.04.05

숫자 타입 함수 - ROUND 숫자 반올림하기

ROUND는 지정한 자리에서 반올림하는 함수입니다. 반올림할 자리 값은 생략할 수 있으며 기본값은 0 입니다. 반올림할 자리 값이 양수면 소수 자리에서 반올림하고 음수면 정수 자리에서 반올림합니다. [사용법]ROUND(숫자 or 열 이름, 반올림할 자리 값) 예시> employees 테이블에서 salary를 30일로 나눈 후 나눈 값의 소숫점 첫째 자리, 소수점 둘째 자리, 정수 첫째 자리에서 반올림한 값을 출력하세요. [실행문]SELECT salary, salary/30 일급, ROUND(salary/30, 0) 적용결과0, ROUND(salary/30, 1) 적용결과1, ROUND(salary/30, -1) 적용결과MINUS1 FROM employees; [실행결과]

STUDY/SQL 2021.04.02

숫자 타입 함수 - TRUNC 숫자 절삭하기

TRUNC는 지정한 숫자 자리에서 숫자를 절삭(숫자를 버림)하는 함수입니다. 기본 문법은 ROUND 함수와 동일합니다. 절삭할 자리 값은 0은 소수점 첫째 자리에서 절삭하겠다는 의미입니다. [사용법]TRUNC(숫자 or 열 이름, 절삭할 자리 값) 예시> employees 테이블에서 salary를 30일로 나누고 나눈 값의 소수점 첫째 자리, 소수점 두째 자리, 정수 첫째 자리에서 절삭하여 출력하세요. [실행문]SELECT salary, salary/30 일급, TRUNC(salary/30, 0) 적용결과0, TRUNC(salary/30, 1) 적용결과1, TRUNC(salary/30, -1) 적용결과MINUS1 FROM employees; [실행결과]

STUDY/SQL 2021.04.01

숫자 타입 함수

숫자타입함수는 주로 숫자를 계산하거나 계산이 긑난 후에 추가로 가공 처리를 할 때 사용합니다. SQL은 다양한 숫자 타입 함수를 제공합니다. 함수설명예시결과ROUND숫자를 반올림한다. 0 이 소수점 첫째 자리다.ROUND(15.351, 8)15TRUNC숫자를 절삭한다. 0 이 소수점 첫째 자리다.TRUNC(15.351, 1)15.3MOD나누기 후 나머지를 구한다.MOD(15, 2)1CEIL숫자를 정수로 올림한다.CEIL(15.351)16FLOOR숫자를 정수로 내림한다.FLOOR(15.351)15SIGN양수(1), 음수(-1), 0 인지를 구분하여 출력한다SIGN(15)1POWER거듭제곱을 출력한다.POWER(2, 3)8SQRT제곱근을 출력한다.SQRT(4)2

STUDY/SQL 2021.03.31

날짜 타입 함수

날짜 연산설명반환값Date + Number날짜에 일수를 더한다.DateDate - Number날짜에서 일수를 뺀다.DateDate - Date날짜에서 날짜를 뺀다.일수Date + Number / 24날짜에 시간을 더할 때는 시간을 24로 나누어서 날짜에 더한다.Date 예시>SELECT TO_CHAR(SYSDATE, 'YY/MM/DD/HH24:MI') 오늘날짜, SYSDATE + 1 더하기1, SYSDATE - 1 빼기1, TO_DATE('20210329')-TO_DATE('20210328') 날짜빼기, SYSDATE + 13/24 시간더하기 FROM DUAL; [실행결과]

STUDY/SQL 2021.03.29