728x90

SQL 25

데이터베이스 - 객체 연습문제

2021/03/03(수) 6번째 수업 ​ ​ ​ 책 13장 연습문제 --문제1. 다음 SQL문을 작성해 보세요. --1-1) EMP 테이블과 같은 구조의 데이터를 저장하는 EMPIDX 테이블을 만들어 보세요. --1-2) 생성한 EMPIDX 테이블의 EMPNO열에 IDX_EMPIDX_EMPNO 인덱스를 만들어 보세요. --1-3)마지막으로 인덱스가 잘 생성되었는지 적절한 데이터 사전 뷰를 통해 확인해 보세요. ​ ​ ​ --문제2 --1번에서 생성한 EMPIDX 테이블의 데이터 중 급여가 1500 초과인 사원들만 출력하는 EMPIDX_OVER15K 뷰를 생성해 보세요 --이 이름을 가진 뷰가 이미 존재할 경우에 새로운 내용으로 대체 가능해야 합니다. --EMPIDX_OVER15K 뷰는 사원번호, 사원 이..

데이터베이스 8장 연습문제

2021/03/16(화) 문제1) 급여(SAL)가 2000초과인 사원들의 부서 정보, 사원 정보를 오른쪽과 같이 출력해 보세요 (단 SQL-99 이전 방식과 SQL-99 방식을 각각 사용하여 작성하세요). 문제2) 오른쪽과 같이 각 부서별 평균 급여, 최대 급여, 최소 급여, 사원수를 출력해 보세요(단 SQL-99 이전 방식과 SQL-99 방식을 각각 사용하여 작성하세요). 문제3) 모든 부서 정보와 사원 정보를 오른쪽과 같이 부서 번호, 사원 이름순으로 정렬하여 출력해 보세요(단 SQL-99 이전 방식과 SQL-99 방식을 각각 사용하여 작성하세요). 문제4)다음과 같이 모든 부서정보, 사원 정보, 급여 등급 정보, 각 사원의 직속 상관의 정보를 부서 번호, 사원번호 순서로 정렬하여 출력해보세요(단 S..

데이터 베이스- 객체

2021/03/03(수) 6번째 수업 ​ ​ ​ ※ 데이터베이스에서 존재하는데 존재하지 않습니다.로 뜨는 이유 - 존재여부를 알려주게 되면 악의적인 의도를 지닌 타인의 의해 노출 될 수 있기 때문에 (어떤 사이트나 게임에서 비밀번호가 틀렸다거나 아이디가 틀렸을 때 명확하게 어떤 것이 틀렸는지 말해주지 않는 경우가 있는데 보안을 조금 더 높이기 위해 였다는 사실) ​ - index/view/인라인 뷰/시퀀스/동의어 ​ 1) index - 데이터 검색 성능의 향상을 위해 테이블 열에 사용하는 객체를 뜻함 테이블에 보관된 특정 행 데이터의 주소, 즉 위치 정보를 책 페이지처럼 목록으로 만들어 놓은 것. CREATE INDEX 인덱스명 ON 테이블명(열이름1 ASC OR DESC 열이름2 ASC OR DESC...

데이터 베이스 6장 연습문제

6장에 연습문제 풀기 --1번 --EMPNO열에는 EMP 테이블에서 사원 이름ENAME이 다섯 글자 이상이며 여섯 글자 미만인 사원 정보를 출력합니다. MASKING_EMPNO열에는 --사원번호 앞 두자리외 뒷자리를 * 기호로 출력합니다. 그리고 MASKING_ENAME열에는 사원 이름의 첫 글자만 보여주고 나머지 글자수만큼 * 기호로 출력하세요 SELECT EMPNO, SUBSTR(EMPNO,1,2) || '**' AS MASKING_EMPNO, ENAME,SUBSTR(ENAME,1,1) || '****' AS MASKING_ENAME FROM EMP WHERE LENGTH(ENAME)>=5 AND LENGTH(ENAME)

데이터베이스 그룹화(그룹 함수)-3

2021/02/25 수업3 ​ ​ ​ ROLLUP/CUBE/GROUPING/GROUPING SETS/GROUPING_ID/LISTAGG/PIVOT ​ SELECT 필드, 그룹함수 FROM 테이블명 GROUP BY ROLLUP(필드); --> ROLLUP안에 들어있는 필드를 기준으로 열을 지정하여 그룹화 ​ SELECT 필드, 그룹함수 FROM 테이블명 GROUP BY CUBE(필드); --> ROLLUP과 같은 역할을 하지만 보기에서와 같이 부서와는 상관없이 직책별 결과가 모두 출력 CUBE는 지정한 모든 열에서 가능한 조합의 결과를 모두 출력 ​ ​ ​ SELECT 필드, 그룹함수 FROM 테이블명 GROUP BY GROUPING SETS(필드); --> 소그룹으로 나누지 않고 모두 대그룹으로 처리하여..

데이터베이스 복습문제 1(SELECT문~)

2021/02/25 수업3 ​ ​ ​ ​ Q1) 테이블의 구조를 샆피는 명령어는? Q2) 실습에 사용될 과목 테이블의 구조를 검색하라. Q3) 실습에 사용될 수강 테이블의 모든 데이터를 검색하라. Q4) 과목들의 과목번호와 과목이름을 검색하라. Q5) 학생들의 학번과 이름, 성별을 검색하라. Q6) 학생들의 학번과 이름, 학년, 반을 검색하라. Q7) 과목번호, 학번, 점수를 검색하라. Q8) 학생들의 성별 중복을 제거하고 검색하라. Q9) 학생들의 학과, 학년 중복을 제거하고 검색하라. Q10) 학생들의 학과, 반 중복을 제거하고 검색하라. Q11) 학생들의 키를 5만큼씩 증가시킨 값을 검색하라.(null값은 0) Q12) 학생들의 학번과 이름을 별칭을 “학번”과 “이름” 으로 부여하여 검색하라. Q1..

데이터베이스 그룹화(그룹 함수)-2

2021/02/25(목) 수업3 ​ ​ ​ - GROUP BY/ HAVING ​ SELECT 필드명, 그룹함수 FROM 테이블명 GROUP BY 필드명; -->출력하고자 하는 값에 일반 필드와 그룹함수가 같이 들어가 있으면 GROUP BY를 사용하여 그룹화 시켜줘야 출력가능 ​ SELECT 필드명, 그룹함수 FROM 테이블명 GROUP BY 필드명 HAVING 그룹함수 조건; ---> 그룹함수에 조건을 주고 싶을 때 HAVING사용 WHERE절에서는 불가능 WHERE절은 그룹함수에 조건을 줄 수 없다 ​ SELECT 필드명, 그룹함수 FROM 테이블명 GROUP BY 필드명; 일반 필드와 그룹함수를 함께 출력할 때 GROUP BY 사용 SELECT 필드명, 그룹함수 FROM 테이블명 GROUP BY 필드..

데이터베이스 그룹화(그룹 함수)-1

2021/02/25 수업3 ​ ​ 그룹 함수 - SUM/COUNT/MAX/MIN/AVG/STDDED ​ SELECT MAX(필드) FROM 테이블명; SELECT MIN(필드) FROM 테이블명; --> 필드 안에 제일 큰수(MAX), 필드안에 제일 작은 수(MIN) 출력 ​ SELECT COUNT(필드 OR *) FROM 테이블명; SELECT 필드1, COUNT(필드 OR *) FROM 테이블명 GROUP BY 필드1; --> COUNT는 갯수를 세어주는 명령어 *은 전체를 뜻함 --> 두번째 줄에 GROUP BY를 써주는 이유는 COUNT는 그룹 함수(다중행)이고 필드1은 일반 행이기 때문에 GROUP BY로 묶어줘야지만 값이 제대로 출력될 수 있다 ​ SELECT SUM(필드명) FROM 테이블 ..

데이터 베이스 함수

2021/02/24(수) 수업2 ​ ​ ​ 단일 함수 숫자 함수 ROUND(올림), TRUNC(버림), CEIL(큰쪽), FLOOR(작은쪽), MOD(나머지), ABS(절대값) 문자 함수 LOWER, UPPER, INITCAP, CONCAT, SUBSTR, LENGTH, INSTR 날짜 함수 SYSDATE, MONTH_BETWEEN, ADD_MONTH, LAST_DAY 변환 함수 TO_NUMBER, TO_CHAR, TO_DATE 일반 함수 NVL, NVL2, NULLIF(인수1, 인수2), COALESCE ​ ​ ​ ​ ​ ​ ​ ​ ​ ----------------------------------------------------------------- 문자 함수 ​ ​ ​ ​ ​ ​ ​ ​ A의 위치 ..

728x90