본문 바로가기

전체 글

(356)
5day -- 5일차 --(7) 입사일부터 지금까지의 날짜수를 출력하라. -- 부서 번호, 이름, 입사일, 현재일, 근무일수(소수점 이하 절삭), -- 근무년수(반올림),근무월수(30일 기준,반올림), 근무주수(반올림)를 출력하라. SELECT DEPTNO, ENAME, HIREDATE, SYSDATE, TRUNC(SYSDATE - HIREDATE) 근무일수, ROUND((SYSDATE-HIREDATE)/365) 근무년수, ROUND((SYSDATE-HIREDATE)/30) 근무월수, ROUND((SYSDATE-HIREDATE)/7) 근무주수 FROM EMP; --(5) 급여가 $1,500 부터 $3,000 사이의 사람은 급여의 15%를 회비로 지불하기로 하였다. -- 이를 이름, 급여, 회비(-2자리에서 반올림..
4day -- 4일차 /* select from where group by having order by */ -- 집합함수, 분석함수 SELECT AVG(SALARY)-- , first_name 일반 컬럼은 집합함수와 같이 쓰지 못함 FROM EMPLOYEES; -- group by : 특정한 컬럼으로 그룹을 지어주는 것 SELECT AVG(SALARY) 부서별평균월급, DEPARTMENT_ID, COUNT(*) 부서인원, max(salary) 부서최고월급, min(salary) 부서최저월급 FROM EMPLOYEES GROUP BY DEPARTMENT_ID; -- having : 그룹에 대한 조건절 SELECT AVG(SALARY) 부서별평균월급, DEPARTMENT_ID, COUNT(*) 부서인원, max(s..
Method의 상속(오버라이딩) 보호되어 있는 글입니다.
문제2 (function) --(1) EMP Table에서 이름, 급여, 커미션 금액, 총액(sal+comm)을 구하여 총액이 -- 많은 순서로 출력하라. 단, 커미션이 NULL인 사람은 제외한다. select ename 이름,sal 급여,comm "커미션 금액",sal+nvl(comm,0) 총액 from emp where comm is not null order by 4 desc; --(2) 10번 부서의 모든 사람들에게 급여의 13%를 보너스로 지불하기로 하였다. -- 이름, 급여, 보너스 금액, 부서 번호를 출력하라. select ename 이름,sal 급여,(sal*0.13) "보너스 금액",deptno "부서 번호" from emp where deptno = 10; --(3) 30번 부서의..
3day -- 3일차 hr 계정 SELECT * FROM TAB; -- 해당 스키마에서 접근할 수 있는 테이블 리스트 DESC EMPLOYEES; SELECT * FROM EMPLOYEES WHERE LOWER(LAST_NAME) LIKE '%king%'; SELECT regexp_replace( REGEXP_REPLACE(PHONE_NUMBER, '(\d{3})\.(\d{2,3})\.([0-9]{4})', '(\1) \2-\3'), '\.', '-'), phone_number FROM EMPLOYEES; SELECT FIRST_NAME, JOB_ID, REGEXP_SUBSTR(JOB_ID,'(.+)(_)([A-Z]+)',1, 1,'i', 3) FROM EMPLOYEES; SELECT FIRST_NAME, JOB..
문제1 (select) -- select * from emp; --(1) 부서번호가 10번인 부서의 사람 중 사원번호, 이름, 월급을 출력하라 select empno 사원번호,ename 이름,sal 월급 from emp where deptno = 10; --(2) 사원번호가 7369인 사람 중 이름, 입사일, 부서번호를 출력하라 select ename 이름,hiredate 입사일,deptno 부서번호 from emp where empno = 7369; --(3) 이름이 ALLEN 인 사람의 모든 정보를 출력하라 select * from emp where ename = 'ALLEN'; --(4) 입사일이 81/05/01 인 사원의 이름, 부서번호, 월급을 출력하라 select ename 이름,deptn..
2day -- select SELECT * FROM EMP WHERE 1!=1; -- 1 = 1 -- 10번 부서 사람들만 조회 SELECT * FROM EMP WHERE DEPTNO = 10; -- 직업이 'CLERK' 인 사람들 조회 SELECT * FROM EMP WHERE JOB = 'CLERK'; -- like 검색 (%,_) -- 이름에 C자가 들어있는 사람을 조회 SELECT * FROM EMP WHERE ENAME LIKE '%C%'; -- 두번째 글자가 C로 시작하는 사람 조회 SELECT * FROM EMP WHERE ENAME LIKE '_C%'; -- order by절 컬럼으로 정렬을 함.(오름차순 : ascending, 내림차순 : descending) -- 월급 오름차순으로 정렬 SELE..
1day -- 한줄 주석 /* 여러줄 주석 */ SHOW USER; ( 현재 user를 보는 명령 ) -- RDBMS (Relational DataBase Management System) -- Schema(스키마) : 객체들의 집합체, 계정당 스키마 하나가 자동으로 만들어짐 SELECT * FROM TAB; -- 행(row)과 열(column)로 이루어진 2차원 데이터 집합 PURGE RECYCLEBIN; SELECT * FROM EMP; DESC EMP; -- 테이블 구조를 보는 명령 SELECT ENAME 사원명, JOB AS JOBJOBJOB, SAL "직원 월급(Salary)" FROM EMP; /* select parsing(실행) 순서 from -> where -> group by -> having ..