lsnrctl start
sqlplus /nolog
conn sys/패스워드 as sysdba
startup
conn hr/패스워드
show user;
단일 행 함수
행당 하나의 결과를 반환
SQL> 함수명(인수)
- 문자함수
- 숫자함수
- 날짜함수
- 변환함수
- 일반함수
+DBMS마다 자체 함수
1. 문자함수
문자 입력을 받아 문자 및 숫자값을 모두 반환할 수 있다.
1) 대,소문자 변환함수
lower('SQL Course'); sql course
upper('SQL Course'); SQL COURSE
initcap('SQL Course'); Sql Course(첫글자 대문자)
디스플레이+ 조건 찾기로 많이 사용된다.
2) 문자 조작 함수
- concat(expr1, expr2) : 두 인수를 연결해서 하나의 문자열로 반환함
concat은 인수가 두 개로만 제한한다.
- substr(expr1,expr2,expr3) : 문자열에 일부분을 반환함.
expr1 : 반환할문자열
expr2 : 시작위치(음수 시작위치를 끝에서부터 찾아옴)
expr3 : 반환할문자수(생략가능. 생략 시 시작위치로부터 끝까지 반환됨)
- length('expr') : 문자열 길이를 숫자 값으로 표시함.
- instr(expr1, expr2) : 문자열(expr1)로부터 특정 문자(expr2)의 첫번째 위치를 반환함
첫번째 공백의 위치를 알때 자주 사용함
- lpad(expr1,expr2,expr3)/rpad(expr1,expr2,expr3) : 오른쪽정렬(lpad)/왼쪽정렬(rpad) 하는 함수
expr1 : 반환할 문자열
expr2 : 전체자리수
expr3: 남는 공간을 채울 문자
- replace(expr1, expr2, expr3) : 문자열(expr1)에서 특정 문자(expr2)를 다른 문자(expr3)로 교체해서 반환함
- trim(expr1 from expr2) : 문자열(expr2)가 문자열(expr1)가 접두어나 접미어에 있다면 삭제(절단)해주는 함수
숫자 중에서 01,02,03,...09에서 0을 삭제 즉, 0이나 공백을 제거할 때 유용하게 활용할 수 있다.
2. 숫자함수
- round(expr1, expr2) : 지정된 소수점 자릿수(expr2) 로 값(expr1)을 반올림함. 즉 expr2까지 반올림
- trunc(expr1, expr2) : 지정된 소수점 자리수(expr2)로 값(expr1)을 버림함. 즉 expr2까지 남기고 버림해라
- mod(expr1, expr2) : expr1/expr2 나머지를 반환함
※DB에서 출력을 하려면 select를 사용한다.
만약 단순 계산결과를 하려면 반드시 from을 써줘야한다.
DBMS에서 내장된 테이블이 有. 그것이 바로 dual이다.
select 계산식 from dual;을 해주면 계산식의 결과가 나온다.(그림 참조)
dual 테이블의 소유는 sys이지만, 공용테이블이기 때문에 사용 가능
3. 날짜함수
- sysdate 함수 : 현재 데이터베이스 서버 날짜 및 시간을 반환하는 함수
- 날짜를 사용한 산술연산이 가능하다.
sysdate +,- : 날짜에 일 수를 더하거나 빼기
sysdate - 날짜 : 날짜에서 다른 날짜를 빼기. 결과는 일 수로 반환
sysdate + 숫자/24 : 날짜에서 시간 수를 더함.
- months_betwwen(expr1,expr2) : 두 날짜 간의 월 수
- add_months(expr1, expr2) : 날짜(expr1)에 월(expr2) 추가해서 반환
- next_day(expr1, expr2) : 지정된 날짜의 다음날을 반환
- last_day(expr) : 월의 마지막 날을 반환
날짜에 round와 trunc 함수를 사용할 수 있다.
month 또는 day를 기준으로 반올림,버림을 할지 말지 정한다.
연습문제
'KDT > DB' 카테고리의 다른 글
240110 DB - 그룹함수, JOIN 1 (0) | 2024.01.10 |
---|---|
240108 DB - 단일 행 함수 2 (0) | 2024.01.08 |
240103 DB - 조건문과 정렬 (0) | 2024.01.03 |
231229 DB - select 구문을 사용한 데이터 검색 (0) | 2023.12.29 |
231227 DB - 데이터정의어 4, 오라클 시작 (0) | 2023.12.27 |