오라클 8

오라클 SQL과 PL/SQL - 데이터 딕셔너리 (Data Dictionary)

데이터 딕셔너리 (Data Dictionary) 오라클은 데이터베이스를 운영하기 위한 정보들을 모두 특정한 테이블에 모아두고 관리하는데 그 테이블을 데이터 딕셔너리라고 합니다. 이 딕셔너리에는 아래와 같은 주요 정보들이 저장됩니다. 오라클 데이터베이스의 메모리 구조와 파일에 대한 구조 정보 각 오브젝트들이 사용하고 있는 공간의 정보 제약 조건 정보 사용자에 대한 정보 권한이나 프로파일, 롤에 대한 정보 감사(Audit)에 대한 정보 이 외에도 많은 정보들이 있습니다. 이 정보들은 사람으로 비유하면 두뇌에 해당되는 정보들이기 때문에 만약 장애나 잘못 관리될 경우 오라클을 사용할 수 없고 더 심한 경우 복구조차 할 수 없게 될 수 있습니다. 그래서 오라클은 딕셔너리를 base table과 data dicti..

오라클 SQL과 PL/SQL ( JOIN 연습문제 - 2 )

1. customer 테이블과 gift테이블을 join하여 고객이 자기 포인트보다 낮은 포인트의 상품 중 한 가지를 선택할 수 있다고 할 때 notebook을 선택할 수 있는 고객명과 포인트, 상품명을 출력하세요. SELECT C.GNAME, C.POINT, G.GNAME FROM CUSTOMER C, GIFT G WHERE C.POINT >= G.G_START AND G.GNAME = 'Notebook' 2. PROFESSOR 테이블에서 교수의 번호, 교수 이름, 입사일, 자신보다 입사일 빠른 사람 인원수를 출력하세요. 단 자신보다 입사일이 빠른 사람 수를 오름차순으로 출력하세요. SELECT P1.PROFNO, P1.NAME, TO_CHAR(P1.HIREDATE, 'YYYY/MM/DD') HIREDA..

오라클 SQL과 PL/SQL ( JOIN 연습문제 - 1 )

1. 학생테이블과 학과 테이블을 사용하여 학생이름, 1전공 학과 번호, 1전공 학과 이름을 출력하세요. 단 ANSI / ORACLE 두 방법 모두 작성하세요 ORACLE SELECT S.NAME STU_NAME, S.DEPTNO1 DEPTNO1, D.DNAME DEPT_NAME FROM STUDENT S, DEPARTMENT D WHERE S.DEPTNO1 = D.DEPTNO ANSI SELECT S.NAME STU_NAME, S.DEPTNO1 DEPTNO1, D.DNAME DEPT_NAME FROM STUDENT S LEFT OUTER JOIN DEPARTMENT D ON S.DEPTNO1 = D.DEPTNO 2. EMP2 테이블과 P_GRADE 테이블을 조회하여 현재 직급이 있는 사원의 이름과 직급,..

오라클 SQL과 PL/SQL ( 형 변환 함수 - 2 )

TO_CHAR 함수 : 숫자형 -> 문자형으로 변환 종류 의미 사용 예 결과 9 9의 개수만큼 자릿수 TO_CHAR(1234, '99999') 1234 0 빈자리를 0으로 채움 TO_CHAR(1234, '099999') 001234 $ $표시를 붙여서 표시 TO_CHAR(1234, '$9999') $1234 . 소수점 이하를 표시 TO_CHAR(1234, '9999.99') 1234.00 , 천 단위 구분 기호를 표시 TO_CHAR(1234, '99,999') 12,345 문제 1. EMP 테이블을 조회하여 이름이 ALLEN인 사원의 사번과 이름과 연봉을 출력하세요, 단 연봉은 (SAL * 12) + COMM으로 계산하고 천 단위 구분 기호로 표시하세요. 풀이 : 더보기 SELECT EMPNO, ENAM..

오라클 SQL과 PL/SQL ( 단일행 함수)

단일행 함수 함수는 어떤 입력값을 받아서 정해진 루틴에 의해 작업하고 결과값을 만들어서 출력하는 것을 말한다. 실생활에서도 거의 모든 것이 함수로 만들어져 있다. 커피 자판기를 예를 들면 동전을 넣고 버튼을 누르면 커피가 나온다. 이것도 함수의 일종이다. SQL에서는 크게 단일행 함수와 복수행 함수로 구분한다. 단일행 함수 : 한번에 하나씩 처리하는 함수 복수행 함수 : 여러건의 데이터를 동시에 입력받아 1건으로 만들어주는 함수 단일행 함수는 입력되는 데이터의 종류에 따라 아래와 같이 구분할 수 있습니다. 함수에 입력되는 값이 문자면 문자함수, 숫자면 숫자함수, 날짜면 날짜함수라고 한다. 문자함수 INITCAP() : 첫글자만 대문자 나머지 소문자로 출력하는 함수 (영어) LOWER() : 모두 소문자로..

오라클 SQL과 PL/SQL ( 날짜조회, 연산자, 정렬 )

날짜조회 오라클에서 날짜를 조회할때에는 반드시 '' 작은따옴표 안에 작성해야 합니다. 숫자외에는 꼭 작은따옴표를 사용해야 하고 문자는 대소문자를 구분, 날짜는 대소문자 구분이 없습니다. 연산자 오라클에서는 우리가 아는 사칙연산 + - * / 모두 가능하다. 값을 더할수도 뺄수도, 사칙연산이 모두 가능하다. 날짜도 비교가 가능하다. 81/12/25 일 보다 큰 날짜를 비교 하였으니 최신의 날짜가 검색이 된다. BETWEEN으로 구간 데이터 조회를 할 수있다. BETWEEN의 꼭 알아야 할 점은 작은 값을 앞에 큰값을 뒤에 둬야하며 두 값을 포함하여 결과를 출력한다는 점을 인지한다. 그리고 BETWEEN은 연산속도가 느려서 속도가 느리다. 같은 결과라면 비교 연산자를 쓰는게 훨씬 좋다. IN연산자는 여러조건..

오라클 SQL과 PL/SQL (데이터 조회 하기)

SELECT 명령을 이용하여 데이터를 조회하기. 39P 연습문제 1, 2, 3 정답 1. Student테이블에서 모든 학생과 이름 ID, 체중을 아래 화면과 같이 출력하고 컬럼이름은 "ID AMD WEIGHT"로 설정 정답 : select name || '''s ID:' || id || ', WEIGHT is ' || weight AS "ID AND WEUGHT" from student; 2. emp 테이벌을 조회하여 모든 사람의 이름과 직업을 아래와 같이 출력하세요. 정답 : select ename || '(' || job || ') ,' || ename ||''''|| job ||'''' AS "NAME AND JOB" from emp; 3. emp테이블을 조회하여 모든 사원의 이름과 급여를 아래와 ..

오라클 SQL과 PL/SQL ( 기본 )

데이터베이스란 : 데이터를 저장해 놓는 곳, 저장되어 있는 데이터가 많으면 대용량 데이터베이스 또는 빅데이터라고 부르기도 합니다. 중요한 것은 이런 용어보다는 '어떻게 저장하고 관리할까?'라는 점이다. 하드디스크에 저장되어 있는 데이터를 사람이 직접 넣거나 지우거나 바꾸는 것은 불가능하다. 어디 있는지 모르기 때문이다. 그래서 데이터 관리를 해주는 전문적인 프로그램들이 있는데 그것을 DBMS(데이터베이스 관리 시스템, database management system)이라고 합니다. (toad, handiSQL 등) 이런 DBMS에서 프로그램에게 사용자 즉 개발자가 의도를 전달할 때 사용하는 언어가 SQL입니다. Structured Query Language 구조화된 쿼리 언어 즉 규칙 있는 말 정도로 번..

728x90