본문 바로가기

분류 전체보기59

[Oracle] JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN, (+) WHERE 절 JOIN SELECT t1.ename, t1.sal, T2.* FROM emp t1, salgrade T2 WHERE t1.sal BETWEEN T2.losal AND T2.hisal; WHERE 절 JOIN하기 옵션 (+) 방법 - 오라클만 가능 select d.dname, l.city from dept d, locations l where d.loc_code = l.loc_code(+); (+)가 없는 테이블 ROW가 전체 출력 됨, DEPT DNAME > INSA 정보까지 보기 위해, locations 테이블에 (+) 함 LEFT JOIN, RIGHT JOIN SELECT D.DNAME, L.LOC_CODE FROM DEPT D LEFT JOIN LOCATIONS L -- FROM D.. 2021. 4. 18.
[Oracle] RANK, DENSE_RANK, ROW_NUMBER, NTILE, LAG, LEAD RANK() OVER, RANK() OVER(PARTITION BY 그룹), SELECT EMPNO, ENAME, DEPTNO, SAL, RANK() OVER (ORDER BY SAL DESC) "RANK" FROM EMP; 사원번호, 이름, 부서번호, 급여, 급여가 많은 사원부터 순위 조회 사원번호, 이름, 부서번호, 급여, 부서 내에서 급여가 많은 사원부터 순위 조회 SELECT EMPNO, ENAME, DEPTNO, SAL, RANK() OVER (PARTITION BY DEPTNO ORDER BY SAL DESC) "RANK" FROM EMP; DENSE_RANK() OVER, DENSE_RANK() OVER(PARTITION BY 그룹) ORDER BY 절에 사용된 컬럼이나 표현식에 대하여 순위.. 2021. 4. 17.
[Oracle/오라클] 그룹함수 - COUNT, SUM, AVG, MAX, MIN, ROWS , + OVER, group by, having MIN, MAX select min(ename), max(ename), min(hiredate), max(hiredate) from emp; 예제 테이블 SELECT * FROM TB_GRADE; SELECT CLASS_CD, MAX(KOR) KOR, MAX(ENG) ENG, MAX(MAT) MAT FROM TB_GRADE GROUP BY CLASS_CD; SELECT CLASS_CD, STUDENT_NO, STUDENT_NM, KOR, SUM(KOR) OVER(PARTITION BY CLASS_CD) AS KOR_SUM, MAX(KOR) OVER(PARTITION BY CLASS_CD) AS KOR_MAX FROM TB_GRADE ORDER BY CLASS_CD, STUDENT_NO; 1) GROUP .. 2021. 4. 17.
[Oracle] 데이터 타입 변환 함수 - 날짜 / 숫자 SYSDATE FORMAT 변경 ALTER SESSION SET nls_date_format ='yyyy-mm-dd'; ALTER SESSION SET nls_date_format ='yyyy-mm-dd hh24:mi:ss'; DY, DAY 요일구하기 select sysdate, TO_CHAR(sysdate,'DY'), TO_CHAR(sysdate,'DAY') from dual; SELECT sysdate, to_char(sysdate, 'Q') 분기, to_char(sysdate, 'DDD') "올해 몇 번째 날", to_char(sysdate, 'DY') "요일" , to_char(sysdate, 'D') "요일을 숫자로", to_char(sysdate, 'WW') "올해 몇 번째 주" FROM du.. 2021. 4. 13.