본문 바로가기
반응형

Database/Oracle31

[SQL-Oracle]서브쿼리(Subquery) ⚫서브쿼리(SUBQUERY) : SQL 명령에 포함되어 실행되는 SELECT 명령 --다수의 SQL 명령으로 얻을 수 있는 결과를 하나의 SQL 명령으로 얻기 위한 서브쿼리 사용 🔘 SELECT 명령(MAINQUERY)에 포함되어 실행되는 SELECT 명령(SUBQUERY) --서브쿼리의 명령을 먼저 실행하여 검색된 행의 컬럼값으로 메인쿼리의 명령을 실행하여 검색결과 제공 --메인쿼리의 FROM, WHERE, HAVING에서 () 안에 서브쿼리 작성 1)EMP 테이블에서 사원이름이 SCOTT인 사원보다 많은 급여를 받는 사원의 사원번호,사원이름,급여 검색 --서브쿼리를 사용하지 않으면 SELECT 명령을 2번 사용하여 원하는 결과 검색 SELECT SAL FROM EMP WHERE ENAME='SCOTT.. 2023. 11. 30.
[SQL-Oracle]JOIN함수 실습 예제👩‍💻 ⬛SQL JOIN 함수 실습 예제 👩‍💻 문제 8번이 어려웠다. OUTER JOIN을 사용한 문제를 좀 더 풀어봐야 할 것 같다! --SQL [JOIN] 실습예제 --문제1) 부서테이블과 사원테이블에서 사번, 사원명, 부서코드, 부서명을 검색하시오. --(사원명 오름차순 정렬할 것) SELECT EMPNO, ENAME, EMP.DEPTNO, DNAME FROM EMP JOIN DEPT ON EMP.DEPTNO=DEPT.DEPTNO ORDER BY ENAME; --문제2) 부서테이블과 사원테이블에서 사번, 사원명, 급여, 부서명을 검색하시오. --단, 급여가 2000 이상인 사원에 대하여 급여기준으로 내림차순 정렬할 것. SELECT EMPNO, ENAME, SAL, DNAME FROM EMP JOIN D.. 2023. 11. 30.
[SQL-Oracle]JOIN 함수 🔘 TABLE JOIN : 두 개이상의 테이블에 저장된 행을 서로 결합하여 원하는 컬럼값을 검색하는 기능 1) EMP 테이블에 저장된 모든 사원의 사원번호,사원이름,급여,부서번호 검색 SELECT EMPNO,ENAME,SAL,DEPTNO FROM EMP; 2) DEPT 테이블에 저장된 모든 부서의 부서번호,부서이름,부서위치 검색 SELECT DEPTNO,DNAME,LOC FROM DEPT; SELECT DEPTNO,DNAME,LOC FROM DEPT; --위에서 두 테이블에 있는 정보들을 검색하기 위해 SELECT를 두 번 썼는데, 이를 한 번에 나열하고 FROM 뒤에 두 테이블 이름을 모두 써봤다. --EMP 테이블과 DEPT 테이블에서 모든 사원의 사원번호,사원이름,급여,부서이름,부서위치 검색 --두.. 2023. 11. 30.
[SQL-Oracle]단일함수&그룹함수 실습 예제👩‍💻 ⬛SQL 단일 함수 실습 예제 👩‍💻 --문제1) 사원테이블에서 입사일이 12월인 사원의 사번, 사원명, 입사일 검색하시오. --방법1) SELECT EMPNO, ENAME, HIREDATE FROM EMP WHERE HIREDATE LIKE '__/12/__'; --방법2) --아래와 같이 TO_CHAR 사용하는 방법이 더 효율적임. SELECT EMPNO, ENAME, HIREDATE FROM EMP WHERE TO_CHAR(HIREDATE, 'MM')='12'; --문제2)다음과 같은 결과를 검색할 수 있는 SQL 문장을 작성하시오. SELECT EMPNO, ENAME, LPAD(SAL, 10, '*') "급여" FROM EMP; --문제3)다음과 같은 결과를 검색할수 있는 SQL 문장을 작성하시오.. 2023. 11. 30.
[SQL-Oracle]함수(Function) - 그룹함수 ★중요★ - count, max, min, sum, avg, group by, having ⚫그룹함수 : 매개변수로 다수의 값을 전달받아 가공하여 처리 결과값을 반환하는 함수 🔘 COUNT(컬럼명) : 매개변수로 테이블에 저장된 검색행의 모든 컬럼값을 전달받아 컬럼값의 갯수를 반환하는 함수 -- 검색행의 갯수 반환 SELECT COUNT(EMPNO) FROM EMP; --그룹함수를 다른 검색대상과 같이 사용할 경우 그룹함수 반환값의 행갯수와 검색대상의 행갯수가 다르면 에러 발생 SELECT COUNT(EMPNO),EMPNO FROM EMP; --그룹함수는 NULL을 값으로 처리하지 않기 때문에 NULL를 제외한 결과값 반환 SELECT COUNT(EMPNO),COUNT(COMM) FROM EMP; --COUNT 함수는 컬럼명 대신 [*] 기호를 사용하여 모든 컬럼을 표현하여 검색행의 갯수 반환.. 2023. 11. 30.
[SQL-Oracle]함수(Function) - 일반함수 -NVL, DECODE ⚫ 일반함수 : 매개변수로 전달받은 값이 특정 조건에 참(TRUE)인 경우에만 변환값으로 바꾸어 반환하는 함수 🔘 NVL(전달값,변경값) : 전달값이 NULL인 경우에만 변경값으로 변환하여 반환하는 함수 --변경값은 전달값과 동일한 자료형의 값으로만 변경 가능 - 다른 자료형의 값으로 변경할 경우 에러 발생 --EMP 테이블에 저장된 모든 사원의 사원번호,사원이름,연봉(급여*12) 검색 SELECT EMPNO,ENAME,SAL*12 ANNUAL FROM EMP; --EMP 테이블에 저장된 모든 사원의 사원번호,사원이름,연봉((급여+성과급)*12) 검색 --성과급이 저장된 COMM 컬럼값이 NULL인 경우 연산이 불가능해 연산 처리 결과로 NULL이 검색되어 실행 오류 발생 SELECT EMPNO,ENAM.. 2023. 11. 30.
반응형