Oracle 데이터베이스의 연구 노트 (D)

제 IV 단일 값 기능

1. 기능 분류
: 두 가지 범주로 오라클 데이터베이스 기능
1)의 단일 값 함수
N 결과의 처리 기능을 통해 획득 된 N 개의 데이터
예 : 조회 모든 직원 LAST_NAME, 대문자 모든 출력
2) 다치 함수 (그룹 함수 )
처리 결과 N 이하의 기능을 초과 한 후에, N 개의 데이터를 얻을 수있다
질의 클래스 각 그룹의 평균 : 예.
클래스 8 개 그룹의 6 개 그룹으로 나누어 48 명 학생, 가정하자.
팀 평균 성적은 팀의 수의 합으로 나누어 각 팀의 점수를 계산하는 데 필요합니다.
마지막으로, 동작 (48)에 관련된 데이터가 결과 만 여섯이다.
, 계산 된 필드 값의 함수에 따른 그룹 다치기를 사용하여
도 멀티 기 함수로 알려진 함수의 값이되도록.

2. 바보 같은 테이블 --dual
듀얼 오라클 데이터베이스 (가상 테이블, 가상 테이블) 더미 테이블
본질은 테이블의 진정한 의미되지 않도록, 바보 같은 테이블에 데이터를 저장하는 데 사용되지 않습니다.
존재 바보 테이블의 의미는 단지 기본 문법 구조를 선택 충족합니다.
SELECT 문을 사용하여 계산하거나 특정 테이블에서 데이터를 처리 할 때 우리는 확실하지
더미 테이블을 사용할 수 있습니다.
예를 들어, 1 + 1을 선택하여 계산된다 :
듀얼 1 + 1에서 선택;
로서는 상술, 1 + 1은 특정 테이블 시트로부터 유도되지 않고, 절 삭제 선택할 수 없습니다.
이 시간 그래서 우리는 쿼리 구조를 보완하기 위해 더미 테이블을 사용할 수 있습니다.
특징 : 테이블에 항상 하나의 더미 데이터.

문자열의 응용 프로그램 3. 단일 값 기능
· LOWER 함수는 모든 소문자에 문자열 변환하는
구문 : 낮은 (문자열 변환)
모두 소문자로 출력을 필요로하는 모든 직원을 LAST_NAME 쿼리
s_emp (LAST_NAME)에서 SELECT 하단을;
· UPPER 함수는 모두 대문자로 문자열을 변환하는
위 (변환하는 문자열) : 구문
모두 대문자로 출력이 요구하는 모든 직원을 LAST_NAME 쿼리
(LAST_NAME) s_emp에서 상위 선택,
변환 · INITCAP 함수는 각 단어의 첫 글자를 대문자로, 나머지 글자는 소문자
쿼리 LAST_NAME 첫 글자를 필요로하는 모든 직원이, 대문자, 나머지 글자는 소문자.
구문 : INITCAP (변환하는 문자열)
s_emp에서 SELECT INITCAP (LAST_NAME)

운동 : 핸들로 '안녕하세요 세계'문자열
의 각 단어는 대문자로는, 나머지 글자는 소문자?
INITCAP SELECT ( '안녕하세요')
이중에서;

쿼리 시스템 시간 :
이중에서 SELECT SYSDATE;


· CONCAT 문자열 연결 함수
결과 유사한 기능 ||의
FIRST_NAME || '-'|| LAST_NAME
구문 : CONCAT (스트링 1, 스트링 2)
참고 : 두 파라미터 오라클 CONCAT 기능은
스플 라이스 복수 원한다면 문자열, 중첩 사용하는 것이 필요하다.
예를 들어
'I', 'LOVE', '중국' 문자열로 스플 라이스
CONCAT (CONCAT ( 'I', 'LOVE'), 'CHINA')
또는 CONCAT ( 'I', CONCAT ( 'LOVE', ' CHINA '))
가 직접 사용할 수있는 경우 ||'는 I '||'LOVE '||'CHINA '
는 I', 'LOVE', 'CHINA') * MySQL 데이터베이스는 CONCAT (할 수있다 '
· SUBSTR 함수 Qiuzi 문자열
로부터를 연속 촬영의 문자열 부분
구문 : SUBSTR는의 (문자열, 길이 시작)
1의 인덱스 값에서 문자
예를 들어, :
문자열 '! 헬로 월드'
'! 헬로 월드'SUBSTR을 (,. 3,





운동 :
직원 정보 (5)의 LAST_NAME 길이를 검색?
SELECT ID, LAST_NAME, 급여
s_emp에서
WHERE 길이 (LAST_NAME) = 5.;

ID SELECT, LAST_NAME, 급여
s_emp에서
'_____'등 LAST_NAME;
· NVL 널의 기능 처리
구문 : NVL (필드는 기본값 처리 될)
필드의 값이 발견되는 경우가 비어 있지 후 필드 값이 걸릴
경우를 빈, 디폴트 값

2.의 단일 값 함수는 디지털 도포
· 라운드 기능 라운드
다음 SQL 명령을 실행하고, 법 관찰
; 이중에서 SELECT 라운드 (45.67,0)
; 이중에서 선택 라운드 (45.67,1)
로부터 SELECT 라운드 (45.67,2)를 이중,
SELECT 라운드 (45.67, -1) 이중에서,
SELECT 라운드 (45.67, -2) 이중에서,
SELECT 라운드 (55.67, -2) 이중에서,
예비 비트에 쓰기 전용 파라미터가 디폴트를 나타내는 경우, 즉 라운드 (45.67,0)
번째 파라미터는 다음 비트 여러 예약의 제 나타낸다.
오른쪽 왼쪽, 양수를 음수.
· TRUNC 함수는 가정하지 않는
다음과 같은 SQL 명령을 실행하고, 법 준수 :
이중에서 SELECT TRUNC (45.67)를,
이중에서 SELECT TRUNC (45.67,1를)
이중에서 SELECT TRUNC (45.67,2을)
은 SELECT TRUNC (45.67를 - 1) 이중에서,
선택 (SELECT) TRUNC (45.67, -2) 이중에서,
선택 (SELECT) TRUNC (55.67, -2) 이중에서,
모듈 · MOD 함수
를 계산 300분의 1,600 나머지?
개조 (1600,300) 선택
이중에서 단계;

신청일 3. 단일 값 기능
· MONTHS_BETWEEN 기능은 개월 수는 두 날짜 계산
? 2008년 8월 8일, 어떻게 지금부터 몇 달 쿼리
MONTHS_BETWEEN (날짜 1, 날짜 2) : 구문
은 SELECT MONTHS_BETWEEN (SYSDATE를 - '08 8개월 -2008 ')
; 이중에서
· ADD_MONTHS 날짜 날짜를 더한 후 몇 달 기능
ADD_MONTHS (날짜, 개월 수) : 구문은
현재 날짜 + 3 개월 쿼리?
ADD_MONTHS은 SELECT (SYSDATE, 3)
이중에서;
· 날짜는 날짜이고 몇 가지 문의 후 다음 주 NEXT_DAY 기능?
구문 : NEXT_DAY (날짜, 요일)
"주"이 표현이 있습니다 :
1)주의 이름이
날짜는 다음 주 월요일의 현재 시간을 확인입니까?
NEXT_DAY 선택 (SYSDATE, '월요일')
이중에서,
선택 NEXT_DAY (SYSDATE, '월요일')
이중에서;
참고 : 다음 주에 기록 된 다른 로케일 이름.
2) 주의 일련 번호는
참고 :주의 최초의 날이 일요일이다.
그래서, 현재 시간을 확인 월요일 날짜 다음 :
선택 (SELECT) NEXT_DAY (SYSDATE, 2)
이중에서,
· LAST_DAY 함수는 날짜를 쿼리 어디 달의 마지막 날
구문 : LAST_DAY (날짜)
현재 월의 마지막 날에 쿼리?
LAST_DAY은 SELECT (SYSDATE)
이중에서;
반올림 · ROUND 함수
구문 : 라운드 (날짜, 선택 규칙)
선택 규칙 : 둘 중 하나를 유지

1) 년으로 유지
원칙 다음에 월별, 6 라운드 7 판단하는
구문은 다음과 같습니다 라운드 (날짜, '년')
쿼리 결과는 둥근에 현재 날짜를 기준으로?
SELECT 라운드 (SYSDATE, '년')
; 이중에서
2) 월에 유지
에, 매일에 따라 판단하는 15 라운드 16 : 원칙
, '달') SELECT 라운드 (SYSDATE
, 이중에서
) 3 (주) 데이로 유지했다.
원칙 : 현재 매주 속도의 수에 따라
일요일 이전에 또는 옆에 반올림
라운드 (SYSDATE, '일'을 선택 이중에서)
- 화요일 가정 일요일
수요일 -로 토요일
) 4 기본
선택 라운드 (SYSDATE) 이중에서를,
현재 시간에 따라 (시간) 절충
· TRUNC 기능만을 가정은하지 않습니다
만 가정하지 않는 것을 제외하고, 라운드 기능이 유사한 방법을 사용합니다.


4. 전달 함수의 응용
기능 TO_CHAR 1)
디지털 형태의 문자열로)
구문 : TO_CHAR (번호 'FMT')는
FMT : 포맷
SELECT TO_CHAR (급여는 'L9,999.00')
s_emp에서,
0 : 주제는 밀어 올려 비트
9 : 부품이 진행되지
: 분할
: 소수점
L : 지역 통화 기호
% : 서양 통화 기호

변환 b)는 문자열을 날짜 형식
구문 : TO_CHAR (날짜, 'FMT')
연간 YYYY 네 자리
숫자 MM 두 자리 개월
의 주 D 일
처음 몇 일 DD 월
DDD a를 의 처음 몇 일
디지털 매년 전체 이름
이름의 달 달은
APR을 MAR 2월 월 JAN의 MON 월이라고
DDSP SP : 영어 철자 철자 매월 초
매월 초 영어 맞춤법 ddspth ( 서수 용어)
전체 이름 일 주
주 단축 DY
TO_NUMBER 2)
디지털 형식으로 문자열
TO_NUMBER (문자열)
내용은 숫자 문자열이어야합니다
; 이중에서 SELECT TO_NUMBER ( '1111')
. 3) TO_DATE의
문자열 날짜 형식으로 변환.
'01 -FEB-18 '
구문 : TO_DATE ('2018년 3월 1일 ',' YYYY-MM-DD ')

추천

출처www.cnblogs.com/DennySmith/p/12189179.html