본문 바로가기

oracle

(14)
[ORACLE] JOIN _ INNER JOIN _ 오라클 조인 [ORACLE] JOIN _ INNER JOIN _ 오라클 조인 Join의 정석 | 1. Join 선택기준 2. On 과 Where 어디 조건을 줄 것인가? 3. Join결과에서 Group By 사용법 4. 공통된 컬럼이 없는 경우 Join이 사용 가능한가? 가능하다면 그 기준은 어떻게 되는가? 5. Outer Join시 (Left, Right, Full Join)의 기준은? 6. 카타시안 곱은 도대체 뭐냐? 위 6가지 궁금증을 하나씩 풀어보자! 1. 조인의 선택기준에 대해살펴보자. Join은 두 테이블간에 공통된 컬럼(조건)으로 (두 테이블을 Row기준으로) 합쳐서 표현하는 것이다. Join에는 크게 Inner Join, Outer Join이 있다. 그럼 둘 중에 무엇을 선택해서 쓸 것인가? 다음은 테..
[ORACLE] NULL 함수 _ 오라클 [ORACLE] NULL 함수 _ 오라클NULL 함수 NVL(컬럼명, n) | 컬럼 혹은 문자열의 NULL 여부를 판단하여, NULL일 경우 지정한 값으로 치환한다. NVL2(컬럼명, n, m) | NULL 여부를 판단하여, NULL 아닐 경우 2번째 인자값을 반환하고 NULL 일 경우 3번째 인자 값을 반환한다. NULLIF(컬럼명, 컬럼명) | 두 문자열을 비교하여 같을 경우 NULL을 반환, 다를 경우 본래 값을 반환한다. 예제1.NVL SELECT NVL(NULL, 1) AS NVL FROM DUAL 예제2.NVL2 SELECT NVL2(NULL, 'NULL 아니다', 'NULL 이다') AS NVL2 FROM DUAL SELECT NVL2(1, 'NULL 아니다', 'NULL 이다') AS NV..
[ORACLE] 숫자 함수 _ 오라클 sql [ORACLE] 숫자 함수 _ 오라클 sql 숫자형 함수 연습 1. ABS : 절대 값을 구해보자. SELECT ABS(-352) FROM DUAL 2. SIGN : SIGN( 숫자 )=> 양수 = 1, 음수 = -1, 0 = 0 을 리턴 SELECT SIGN(-126), SIGN(128), SIGN(0) FROM DUAL 3. POWER : POWER( 임의의 수, 승수 ) SELECT POWER(2, 3) FROM DUAL 4. SQRT : SQRT( n )=> n 제곱근 SELECT SQRT(4) FROM DUAL 5. 이 구역에서 가장 쎈놈 나와!GREATEST & LEAST리스트 중에서 제일 큰 값과 작은 값을 리턴하는 함수!! 제일 첫번째 놓인 컬럼에 또는 문자에 의해 타입이 결정된다!! SE..
[ORACLE] Natural Join _ 네추럴 조인 _ 오라클 [ORACLE] Natural Join _ 네추럴 조인 _ 오라클 NATURAL JOIN 두 테이블의 동일한 이름(컬럼명)을 갖는 컬럼은 모두 조인이 된다. EMP1 과 EMP2 테이블 EMP1 테이블 EMP2 테이블 위와 같이 하나의 테이블을 복사해서 동일한 테이블을 만들었다. 먼저, INNER JOIN 한 결과를 살펴보자. 1. INNER JOIN SELECT A.EMPNO, A.SAL FROM EMP A INNER JOIN EMP2 B ON A.EMPNO = B.EMPNO INNER JOIN INNER 조인은 ON절에 하나의 조건만을 걸었다. 그래서 EMPNO만 같다면 그에 해당하는 결과물 모두를 가져오는 것을 볼 수 있다. 반면에, NATURAL JOIN은 2. NATURAL JOIN SELECT..
[ORACLE] 오라클 날짜 함수 [ORACLE] 오라클 날짜 함수 1. 날짜 포맷 CC: 세기(Century) YEAR: 년도 YYYY, YYY, YY, Y : 년도 자릿수 표기 BC, AD : 서기 등으로 표시 Q: 분기 표시 MM : 두자리로 월표시 MONTH: 영어로 표시 MON: 영어로 3자리로 월표시 RM: 로마자로 표시 i, ii. xi WW, WI : 1년기준 몇째주 표시 W :한달기준 몇째주 표시 DDD: 365(1년기준 ) 의 몇째 일 DD: 날짜를 두자리로 표시 D: 요일을 숫자로 표시 DY: 요일 한자리로 표시 DAY: 요일 표시 AM, PM, A.M. , P.M. : 오전오후 표시 HH, HH12 : 12시 기준으로 표시 HH24 : 24시 기준으로 표시 /, "of" : 날짜의 중간에 문자 표시 -> SPTH: ..
[ORACLE]오라클 함수 _ ROLLUP, CUBE, GROUPING SETS [ORACLE]오라클 함수 _ ROLLUP, CUBE, GROUPING SETS 집계함수 정리 모두가 아는 GROUP BY 함수인, SUM(), AVG(), COUNT(), MAX(), MIN() 을 빼고 ROLLUP() & CUBE() & GROUPING SETS() 함수를 정리해본다. 1. ROLLUP() 그룹의 소계와 총계를 구한다. (순서가 중요하다. 제일 앞에 놓인 것에 대해서 소계를 구하게 된다.) -- 1. 1 ROLLUP -- 각 직업별로 어떤 취미를 가진 사원이 있는지, 그 사원수와 직업별 소계 및 총계를 구하여라. SELECT MEM_JOB , MEM_LIKE , COUNT(1) FROM IC_MEMBER GROUP BY ROLLUP(MEM_JOB, MEM_LIKE) -- 1.2 ROL..
[ORACLE] 오라클 공백제거 실패 _ trim & replace 오라클 공백제거 실패 ORACLE _ trim & replace TRIM & REPLACE trim _ 왜 인지... 먹히지 않는다!! WHY!!?!! : 엑셀로 작성한 쿼리를 들고왔는데,공백을 공백으로 인식하지 못하는데, 쿼리에는 공백이 있다. tab 도 안 먹힌다. 씨알도 안 먹인다. 왜 trim이 안 될까... 이때, 그 공백자체를 DB에서 복사해 붙여넣어준다. 된다!! replace를 활용해 공백을 '' 공백없음으로 제거해줬다. 아래는 해당 쿼리이다. --trim _ 공백이 제거되지 않는다... UPDATE ic_coffee SET coffee_name = trim(coffee_name); --replace UPDATE ic_coffee SET coffee_name = replace(coffee_..
[ORACLE] 오라클 계정 생성 오라클 계정 생성 오라클의 cmd인 Run SQL Command를 켜고, conn /as sysdba : 계정을 생성할 수 있는 관리가 권한으로 접솝한다. create user 사용자아이디 identified by 비밀번호; : 아이디와 비밀번호를 생성한다. grant dba to 사용자아이디; : 아이디에 권한을 부여한다.
[ORACLE] View 오라클 뷰 객체 사용법 [ORACLE] ORACLE View || 오라클 뷰 객체 사용법 View Table || 가상의 테이블 창을 통해 테이블을 본다고 생각하자. 창을 어디에 내느냐에 따라 볼 수 있는 테이블이 다른 것이다. 1) 가상의 뷰 검색 - 단발에 그치는 검색이다. 2) 가상의 뷰 생성 - 원하는 자료들만 모아, 뷰 테이블을 생성해서 사용할 수 있다. (!뷰 테이블 내 검색가능) 예제1. 기존의 테이블의 컬럼을 그대로 가져와 사용하는 것. 하지만 VIEW_PROD1은 실제 뷰테이블이 아니다. => 뷰테이블은 실제하는 테이블과 같이 사용할 수 있다. 예제2. 뷰테이블 생성하기 예제2-1. 생성한 뷰테이블로 조회하기. 예제 3. VIEW_MEMBER 뷰테이블 생성- 뷰테이블은 생성할 당시의 조건에 맞지않게 수정이 불가..
[ORACLE] 오라클 업데이트 ORACLE UPDATE [ORACLE] 오라클 업데이트 ORACLE UPDATE 데이터 업데이트 데이터 업데이트에 대해서 배워보자. How to Update? UPDATE 테이블명SET 테이블컬럼 = '원하는 변경 값'WHERE 원하는 조건 Exam 01 1) 조회 2) 업데이트 검색이 바르게 되는 것을 확인 한 후에 업데이트 3) 업데이트 결과 확인!! Exam 02 1)조회 2) 업데이트 Exam 03 1) 조회 2) 업데이트! 10% 인상된 것 확인 할 수 있다. Exam 04 1) 조회 null 인 조건을 걸때는 'IS NULL' 로 확인한다. 2) 업데이트 Exam 05 Exam 06 1) 선조회 후처리! 항상 원하는 데이터를 바르게 선택했는지 확인해라. Exam 07 1) 조회 일반방법으로 조회하는 방법과 EXIST..