oracle (13) 썸네일형 리스트형 LIKE 연산자 몇 가지 문장을 직접 실행해보면서 like의 용도에 대해서 알아보자employees 테이블에는 각 사원별로 전화번호 정보가 phone_number 칼럼에 담겨 있다 이 칼럼은 숫자형태로 보이지만 varchar2 타입이다. 그럼 전화번호가 515로 시작되는 사우너을 조회해 보자. SELECT employee_id 사원번호, first_name || '' || last_name 성명, salary 월급, department_id 부서코드, phone_number 전화번호FROM employeesWHERE phone_number LIKE '515%'; 출력결과를 보면 딱히 설명히 필요하지 않을 것이다. 전화번호가 515로 시작되는 데이터만 출력된것을 확인할 수 있다. 물론 %의 위치만 바꾸면 다른 결과값도 출.. view가 왜 필요할까? view 와 table은 뭔가 일맥상통하는 부분이 있다.간단한 예를 들어보겠다.작업중에 다른 사용자가 다른 사용자의 데이터를 필요로 하는 경우들이 있다.하지만 모든 데이터를 공개할순 없다. 급여 관련칼럼이라던지 비공개 되어야할 칼럼들이 존재하기 때문이다이때 사용되는게 view이다 원하는 데이터 칼럼만 view를 생성해서 불러쓸수 있는 것이다. CREATE VIEW v_emp1 ASSELECT first_name, last_name, email, hire_dateFROM employeesWHERE department_id = 20;위와 같은 쿼리를 작성하면 v_emp1 이라는 이름의 view가 생성되고 그 view에는 성, 이름, 메일, 고용날짜가 들어있는 임시테이블이 생성되는 것이다. 참 편하지 않는가?.. ROWNUM 이란? ROWNUM 이란?: ROWNUM은 WHERE절에 의해 추출된 DATA SET에 ROW 단위로 붙는 순번이다.자료의 순서를 다른 목적으로 이용하고자 할 때 유용하게 쓰이는 벙보이기도 하다. 즉 ROWNUM 이란 WHERE까지를 만족시킨 자료에 붙는 순번이라고 할 수 있다.[따라하기] ROWNUM의 이용 SELECT ROWNUM, EMP_ID, EMP_NAMEFROM TEMPWHERE EMP_ID > 0AND LEV= '수습'; ROWNUM과 관련하여 주어지는 조건이 =, > , >=로 주어지면, 원하는 결과가 나오지 않는다는 것을 확인해 보자SELECT ROWNUM, EMP_ID, EMP_NAMEFROM TEMPWHERE EMP_ID > 0AND LEV = '수습'AND ROWNUM >= 5; 결과를 통.. 서브쿼리의 이해 예제) professor테이블에서 심슨 교수와 같은 입사일에 입사한 교수 중에서 조인형 교수보다 월급을 적게 받는 교수의 이름과 급여, 입사일을 출력하세요. 쿼리문을 짜기 전에 메인쿼리가 무엇인지? 서브쿼리로 뭘 넣어야 하는지 생각해본다.1. 심슨 교수와 같은 입사일에 입사한 교수가 첫번째 서브쿼리2. 조인형 교수보다 월급을 적게 받는 교수가 두번째 서브쿼리 SELECT NAME "이름", pay "급여", hiredate "입사일"FROM PROFESSORWHERE hiredate = (SELECT hiredate FROM PROFESSOR outer join outer join(표준방식)SELECT e.DEPTNO, dname, empno, enameFROM EMP e right outer join DEPT don d.DEPTNO = e.DEPTNOORDER BY e.DEPTNO; (오라클 방식)SELECT e.DEPTNO, dname, empno, enameFROM EMP e, DEPT dWHERE d.DEPTNO = e.DEPTNO(+)ORDER BY e.DEPTNO; OUTER JOIN 1. OUTER JOIN INNER JOIN이 JOIN 조건에 부합하는 행만 JOIN이 발생하는 것이라면, OUTER JOIN은 조건에 부합하지 않는 행까지도 포함시켜 결합하는 것을 의미한다. 자주는 아니지만, 가끔 유용하게 사용될 수 있으므로 꼭 알아둘 필요는 있다. .. 데이터 관계 일대일,일대다, 다대다 1. 일대일 : 관계를 맺고 있는 두 개체의 레코드가 서로 하나씩 대응하는 관계2. 일대다 : 관계를 맺고 있는 두 개체에서 부모 개체의 하나의 레코드가 자식 개체의 여러 레코드에 대응되는 관계, 가장 일반적인 관계3. 다대다 :관계를 맺고 있는 두 개체에서 부모 개체의 하나의 레코드가 자식 개체의 여러 레코드에 대응되면 반대로 자식 개체의 하나의 레코드도 부모 개체의 여러 레코드와 관계를 맺을 수 있음을 의미 DECODE DECODEDECODE는 일반적인 프로그래밍 언어의 IF문을 SQL 문장 또는 PL/SQL 안으로 끌어들여 사용하기 위하여 만들어진 오라클 함수이다.따라서 일반적인 프로그래밍 언어의 IF문이 수행할 수 있는 기능을 포함하고 있다. 단순 등호비교IF A = B THENRETURN 'T';END IF; ELSE를 포함하는 IF문IF A = B THENRETURN 'T';ELSERETURN 'F';END IF; [따라하기] DECODE의 사용(단순 등호 비교)1. 주당 강의 시간과 학점이 같으면 '일반'을 돌려 받으려 한다.SELECT LEC_ID,DECODE(LEC_TIME,LEC_POINT,'일반')FROM LECTURE;-----------LEC_TIME과 ,LEC_POINT가 같다면 일반을 출력하는 쿼.. ROWNUM ROWNUM: ROWNUM이란 WHERE까지를 만족시킨 자료에 붙는 순번이라고 할 수 있다. [따라하기]TEMP의 자료를 SELECT 할때 ROWNUM을 붙여보자. SELECT ROWNUM, EMP_ID,EMP_NAMEFROM TEMPWHERE EMP_ID > 0AND LEV ='수습'; 이번에는 위의 조건에 ROWNUM과 관련된 조건을 붙여보자. SELECT ROWNUM, EMP_ID, EMP_NAMEFROM TEMPWHERE EMP_ID > 0AND LEV='수습'AND ROWNUM 또는 >=로 주어지면, 원하는 결과.. 이전 1 2 다음