본문 바로가기

IT To do and To was

22년 2월 3일_첫 조퇴, 오라클 함수 5문제, 서버쿼리 5문제 만들기

728x90
반응형

목요일[하.. 위액을 토하는 느낌이 이런거구나..]

1. 오라클함수 5문제

2. 서버쿼리문제

 

1. 함수

문자데이터 

문자를 가공하는 오라클 함수 º upper //모든 것을 대문자로
º lower // 모든 것을 소문자로
º initcap // 첫 글자만 대문자로
ex) select upper(ename) from emp;
------------------------------------------------------------------
활용 /문자열 비교
select * from emp where upper(ename) = upper('SCOTT');

select * from emp where upper(ename) like upper('%scott%');

문자열의 길이를 비교하는 length함수 select ename, length(ename)
from emp;
활용 / 이름 길이
select * from emp where length(ename) >=5;
문자열의 일부 추출하는 오라클 함수 substr(문자열데이터, 시작위치, 추출길이)
substr(문자열데이터, 시작위치)
ex) select substr(ename, 3, 2) from emp;
------------------------------------------------------------------
활용 함수안에 다른함수 함께 사용
select job, substr(job, -length(job), -3) from emp;
문자열 데이터 안에서 특정 문자 위치를 찾는 instr함수 instr(문자열데이터, 찾으려는 문자, 위치찾기시작숫자, 시작에서 문자가 몇번째인지 지정)
ex) select instr('HI','I', 2) as hihi
from dual;
------------------------------------------------------------------
활용 특정문자를 포함하고 있는 행 찾기
select * from emp
where instr(ename, 'S') > 0;

select * from emp
where ename like '%S%'
특정문자를 다른문자로 바꾸는 함수 replace(문자열데이터 또는 열이름, 찾는 문자, 대체할문자)
ex)  select '010-3798-0033' as replace_b
replace('010-3798-0033','-',' ')as rere
from dual;
데이터의 빈 공간을 특정문자로 채우는 함수 lpad(문자열데이터, 데이터의 자릿수, 채울문자)
rpad(문자열데이터, 데이터의 자릿수, 채울문자)_오른쪽부터
ex) select 'haryul', lpad('haryul', 10,'♡') as remake
from dual;
두 문자열의 데이터를 합치는 함수 select concat(ename, comm)
concat(empno, concat(':' ename))
from emp
where ename = 'scott';
+
|| 도 똑같이 사용가능
ex ) select ename||' : ' || comm
from emp;
특정 문자를 지우는 함수 trim(삭제옵션, 삭제할 문자, from 원문 문자열 데이터)
ex) select trim('H' from ename) as test

숫자데이터

특정위치에서 반올림하는 함수 round(숫자, 반올림할 위치 선택)
ex)select round(123.127, 2) as hi
= 123.13
특정위치에서 버리는 함수 trunc(숫자, 버림위치 선택) //반올림을 처리하지 않고 지움
ex) select trunc(123.123, 2) as hi
= 123.12
숫자를 나눈 나머지 값을 구하는 함수 mod(나눗셈 될 숫자, 나눌 숫자)
ex) select mod(13, 2) as hi
from dual;
= 1
날짜 데이터를 다루는 날짜함수
날짜데이터 + 숫자 : 숫자의 일수만큼의 이후의 날짜
날짜데이터 - 날짜데이터 : 두 날짜간의 일수차이
ex) select sysdate as now
sysdate -1 as yesterday
sysdate +1 as tomorrow
from dual;
개월 이후 날짜를 구하는 함수 add_months
add_months(날짜데이터, 더할 개월 수)
ex) select sysdate, add_months(sysdate, 3) from dual;
2021-02-03 오후 9:48:00 | 2021-05-03 오후 9:48:00
두 날짜간의 개월 수 차이를 구하는 함수 months_between(날짜데이터, 날짜데이터)
숫자 또는 날짜 데이터를 문자 데이터로 변환 to_char(날짜데이터, 출력되길 원하는 문자형태)
(+ 출력 언어지정
'nls_date_language = korean'
문자 데이터를 숫자 데이터로 변환 to_number
문자 데이터를 날짜 데이터로 변환 to_date
null 처리함수 nvl(null인지여부를검사할 데이터 또는 열,앞의 데이터가 null일경우 반환할 데이터)

2.서버쿼리

못함..ㅜ

 

 

//yesterday wished to today list

 

없음

 

tomorrow wish list

 

. 수업 100프로 다 이해하기

. 몸, 정신 다듬고 챙기기

. 컨디션 300% 돌아오기

 

 

728x90
반응형