목록분류 전체보기 (462)
hyeonga_code
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/enHLBG/btsozjDcDF0/DSArTWZztFpiDWQZpzSFs0/img.jpg)
-- 함수의 중첩 -- 단일 행_row 함수는 여러 번 중첩될 수 있습니다. -- 가장 안쪽부터 바깥쪽 순으로 계산합니다. SELECT last_name, UPPER(CONCAT(SUBSTR (LAST_NAME, 1, 4), '_US')) FROM employees WHERE department_id = 60; /* LAST_NAME UPPER( CONCAT( SUBSTR( LAST_NAME, 1, 4 ), '_US')) | | |---------------- (1) ----------------| | | |----------------------------- (2) --------------------------| |--------------------------------- (3) ----------..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cBk7ws/btsoSmc9fdi/JWjl5Is26hi1s4cRyRnMHk/img.jpg)
-- SQL 함수 -- 일반 함수 -- 모든 데이터 유형을 사용할 수 있습니다. -- 널 값을 사용할 수 있습니다. -- NVL( expr 1, expr 2 ) -- 널 값을 실제 값으로 변환합니다. -- 사용되는 데이터 유형 : 날짜, 문자, 숫자 -- 데이터 유형은 서로 일치해야 합니다. -- NVL2( expr 1, expr 2, expr 3 ) -- expr 1이 null이 아닌 경우 expr 2를 반환하고 expr 1이 null인 경우 expr 3을 반환합니다. -- COALESCE( expr 1, expr 2, .... expr n ) --표현식 리스트에서 처음으로 null이 아닌 표현식을 반환합니다. -- NVL SELECT last_name, commission_pct, NVL(commis..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/zeEBi/btsoGhYQUny/poohxQyrsG813DlkVBAKCk/img.jpg)
-- SQL 함수 -- 변환 함수 -- 데이터 타입을 변환할 수 있는 함수입니다. -- Implicit_암시적 데이터 유형 변환 -- 프로그램이 자동으로 형을 변환해줍니다. -- Explicit_명시적 데이터 유형 변환 -- 날짜 -- 문자 -- 숫자 -- 숫자 >'TO_CHAR'> 문자 >'TO_NUMBER'> 숫자 -- 날짜 >'TO_CHAR'> 문자 >'TO_DATE'> 날짜 -- 숫자와 날짜 사이의 변환은 없습니다. -- 암시적 SELECT last_name, RPAD(last_name, 15, '*') AS ename, LPAD(salary, 10, '*') AS salary FROM employees WHERE department_id IN (50, 60); /* LAST_NAME ENAME ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/chUdMr/btsozSyvtTA/sbsG7fKLzZSeWEU15L2cmk/img.jpg)
-- 날짜 데이터에 ROUND / TRUNC 함수 -- ROUND : 반올림합니다. -- TRUNC : 버림합니다. -- YEAR 'yyyy' : 한 해의 7월 1일을 기준으로 지정된 날짜를 당년, 혹은 다음 해의 1월 1일로 초기화합니다. -- MONTH 'mm' : 각 달의 중간_15일 지정된 날짜를 당월 혹은 다음 월의 1일로 초기화합니다. -- 1달이 31일인 경우 15일 정오, 1달이 30일인 경우 14일 자정이 기준이 됩니다. -- DD : 정오를 기준으로 지정된 날짜를 특정 일의 자정으로 초기화합니다. -- D : 수요일을 기준으로 지정된 날짜를 전후 일요일로 초기화합니다. SELECT ROUND(sysdate, 'yyyy'), ROUND(sysdate,'mm'), ROUND(sysdate,..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cSAPhG/btsoyVhVHpS/56mHvGhC1dxcljSDK6dTd1/img.jpg)
-- 날짜 함수 -- MONTH_BETWEEN(date1, date2) : 두 날짜 간의 달 수를 반환합니다. -- ADD_MONTH(date, n) : 날짜에 달 수를 더해 반환합니다. -- NEXT_DAY(date, 'char') : 지정 날짜 이후로 가까운 지정한 요일에 해당하는 날짜를 반환합니다. -- LAST_DAY(date) : 해당하는 달의 마지막 날을 반환합니다. -- EXTRACT( [YEAR|MONTH|DAY] from date) : 지정 날짜로부터 지정된 값을 추출하여 반환합니다. -- 시간까지 계산되므로 정수가 나오는 경우가 적습니다. -- MONTH_BETWEEN(date1, date2) SELECT last_name, hire_date, MONTHS_BETWEEN(sysdate,..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cKL2VC/btsoyVa8xwm/j6ekEC2iURJktR7mpZKp01/img.jpg)
-- SQL 함수 -- 날짜 함수 -- 내부 숫자 형식(세기, 연도, 월, 일, 시, 분, 초)로 날짜를 저장합니다. -- 국가별로 기본 날짜 표시 형식이 있습니다. -- 연도의 마지막 두 자리만 지정하여 20세기에 21세기 날짜를 저장할 수 있습니다. -- 동일한 방식으로 21세기에 20세기 날짜를 저장할 수 있습니다. SELECT last_name, hire_date FROM employees WHERE last_name like 'G%'; /* LAST_NAME HIRE_DATE --------------------------------------- Grant 14/05/24 Gietz 09/06/07 */ -- 시스템 날짜 연산 -- 값을 따로 입력하지 않고 시스템에서 가지고 오는 것입니다. --..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/EFzt1/btsoRkNE0kl/U67qefvshnTM2d2aiBIcWk/img.jpg)
-- SQL 함수 -- 숫자 함수 -- ROUND : 특정 위치에서 반올림한 값을 반환합니다. -- TRUNC : 특정 위치에서 버림한 값을 반환합니다. -- MOD : 인수로 나눈 나머지 값을 반환합니다. -- CEIL : 지정된 숫자보다 큰 정수 중 가장 작은 정수를 반환합니다. -- FLOOR : 지정된 숫자보다 작은 정수 중 가장 큰 정수를 반환합니다. -- ROUND ('지정 숫자', 반올림 할 소수점 자리 수') SELECT ROUND(45.923,2), ROUND(45.923,0), ROUND(45.923,-1) FROM dual; /* ROUND(45.923,2) ROUND(45.923,0) ROUND(45.923,-1) --------------------------------------..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/GZ5gW/btsoGhj1KxA/CSk4WCV84gOe5J8wBkmBK1/img.jpg)
-- 문자 조작 함수 -- CONCAT : 값을 결합합니다. 파라미터를 두 개만 사용할 수 있습니다. -- SUBSTR : 지정한 길이의 문자열을 추출합니다. -- LENGTH/LENGTHB : 문자열의 길이를 숫자 값으로 표시합니다. -- INSTR : 지정한 문자의 위치를 숫자로 표시합니다. -- LPAD : 문자 값을 오른쪽 정렬하고 빈 곳을 지정한 문자열로 채워줍니다. -- RPAD : 문자 값을 왼쪽 정렬하고 빈 곳을 지정한 문자열로 채워줍니다. -- TRIM : 문자열에서 접두어나 접미어 또는 두 가지 모두를 잘라줍니다. -- LTRIM/RTRIM : 반복적인 문자 제거에 사용합니다. -- REPLACE : 문자를 대체하여 반환합니다. -- CONCAT SELECT CONCAT(CONCAT(f..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dijplJ/btsoRiPQPlA/1kIScNilIGkU3UBIpqNQ8k/img.jpg)
-- SQL 함수 -- DUAL : 계산이나 함수를 실행해보고자 할 때 사용하는 더미 테이블입니다. -- 기존의 테이블을 지정하는 경우 데이터의 개수만큼 반복되어 출력됩니다. -- 문자 함수 -- 대소문자를 조작 함수 -- LOWER : 모두 소문자로 출력합니다. -- UPPER : 모두 대문자로 출력합니다. -- INITCAP : 띄어쓰기를 기준으로 첫 문자만 대문자로 출력합니다. SELECT LOWER('ORACLE DATABASE'), UPPER('Oracle dataBase'), INITCAP('oracle DATABASE') FROM dual; /* LOWER('ORACLE DATABASE') UPPER('Oracle dataBase') INITCAP('oracle DATABASE') -----..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/IH6gv/btsoSj1MtKB/GHBSop5AnN866WfnHE1xuK/img.jpg)
-- SET 연산자 -- 규칙 -- 비교하는 컬럼의 수가 동일해야 합니다. -- 컬럼의 수를 일치시키기 위해 숫자형의 경우 상수를 지정할 수 있습니다. -- 비교하는 컬럼의 데이터 타입이 동일해야 합니다. -- 컬럼을 여러 개를 비교할 수 있지만 집합이 어지러울 수 있습니다. -- 결과는 자동으로 정렬되어 출력됩니다. -- UNION : 합집합 (중복을 제거합니다.) -- UNION ALL : 합집합 (중복을 제거하지 않습니다.) -- INTERSECT : 교집합 -- MINUS : 차집합 (A-B != B-A) -- [ SELECT ] UION/UNION ALL/INTERSECT/MINUS [ SELECT ] ; -- 실습에 사용할 테이블 정보를 확인합니다. SELECT * FROM job_histor..