데이터베이스 오라클> Left outer join 예시 2021. 11. 26. LEFT OUTER JOIN은 언제 사용할까??? LEFT OUTER JOIN은 기반 테이블를 살리면서 조건에 해당하는 정보를 다른 테이블에서 가져와 붙이거나 정보가 없으면 null로 표현하고 싶을 때 사용한다. 테이블 2개 예시 오늘의 준비물1이다. LEFT OUTER JOIN 1개일 때 (+)의 의미는 LEFT OUTER JOIN 표시이다. 오라클 쿼리 표기법이므로 ANSI 표기문을 알아두자. ANSI 표기법은 테이블1 left join 테이블2 on 테이블1 조건 = 테이블2 조건 이런 형식이다. 이렇게 나오는데 order by를 겁나 건다 이해하기 쉽게 표현 완료 LEFT OUTER JOIN 순서 변경하면? 만약 outer 대상 순서를 바꾸면 이런 형식으로 나온다. LEFT OUTER JOIN 2.. 오라클 데이터베이스 접속하는 법 2021. 11. 4. TNS (Transparent Network Substrate) 오라클에서 제공하는 공통 인터페이스로 데이터 송수신 등 일반적인 통신 처리 오라클 서버에서 사용할 수 있는 통신 프로토콜은 TCP/IP, SSL(Secure Socket Layer)를 적용한 TCP/IP와 파이프 등이 있다. tnsnames.ora 데이터베이스 주소를 정의한 파일 이게 있으면 SID와 Service name을 직접 입력하지 않아도 데이터베이스에 연결 가능 데이터베이스에 접속하기 위해서 필요한 것. 1. 데이터베이스 주소 2. 데이터베이스 포트 3. SID/Service name 4. 사용자이름/ 사용자비밀번호 데이터베이스 주소를 알아야 데이터베이스 컴퓨터로 갈 것이고 데이터베이스 포트를 알아야 서버에서 프로그램 위치를 알 것.. 오라클 디렉토리 개념 2021. 11. 3. 디렉토리를 사용하는 이유? 오라클DB에서 OS에 있는 파일에 접근할 때 필요 DB에 디렉토리를 만들어서 사용해야 한다. 과거 exp/imp 사용할 땐 필요없었지만 expdp/impdp를 사용할 땐 꼭 지정해야 한다. 디렉토리 조회 select * from dba_directories; 디렉토리 생성 create directory DATA_PUMP_TEST as 'C:\DUMP'; sys나 system 유저가 아닌 일반유저가 directory를 생성하려면 create any directory 권한이 있어야 한다. 주는 방법 : grant create any directory to [사용자이름]; 디렉토리 변경(OS위치 변경) create or replace directory DATA_PUMP_TEST as.. SQL DECODE와 CASE WHEN의 차이점 2021. 10. 28. 비슷한 조건문이지만 성격이 다르다. case when decode sql statement 함수 sql 과 pl/sql 모두 사용 가능 sql에서만 다양한 비교연산 가능 등가 연산 null 비교 연산 불가 null 비교 연산 가능 null 비교 연산 불가능하다는 뜻은??? 예를 들어서 나는 어떤 테이블에서 어떤 셀이 null인지 아닌지 판단하고 싶은데 어떤 셀 값이 null 일 경우 실행하면 어떤 셀에는 null 값이 들어있어도 아예 판단을 못한다. 즉, case when 에서 null 값은 비교 연산(=, >, SQL with 절, row number , lag/lead 함수 사용 2021. 10. 28. with 절은 이름이 부여된 서브쿼리 view 공통점 임시 테이블을 만든다. view 차이점 view는 한 번 만들면 drop할 때까지 없어지지 않는다. with은 쿼리문 안에서만 존재한다. 장점 재사용 가능 반복사용 시 성능향상 with ex1 as ( select 'everyone' as str1 from answer ) select * from ex1; str1 칼럼에 everyone이라는 내용으로 answer 테이블 행 갯수만큼 채워진다. with 재사용 with ex1 as ( select 'everyone1' a from answer union all select 'everyone2' from answer ), ex2 as ( select 'everyone3' a from answer unio.. SQL 기초와 예시 2021. 10. 28. SQL Fiddle SQL Fiddle | A tool for easy online testing and sharing of database problems and their solutions. Query Panel Use this panel to try to solve the problem with other SQL statements (SELECTs, etc...). Results will be displayed below. Share your queries by copying and pasting the URL that is generated after each run. sqlfiddle.com 웹사이트에서 sql 연습할 수 있음. 닭잡는데 소잡는 칼이 필요할까? 그냥 간단한 거 하고 싶은데 오라클.. SQL 가로를 세로로 / 세로를 가로로 (with where 와 left join) 2021. 10. 27. 결론 가로에서 세로로 union 함수 사용, 세로에서 가로로 max 함수 사용 가로에 있는 칼럼들을 세로로 나열하는 방법 상황설명 넷플릭스 아이디를 공유하는 팀을 운영하고 있다. 각 팀 당 4명이 있다. 필요한 정보만 뽑고 각 구성원을 세로로 표현하고 싶다. group_info team_id team_password start_date pay pay_actual profit 1 1111 2021.10.27 14500 7600 6900 2 1111 2021.10.23 14500 7600 6900 3 1111 2021.9.28 14500 7600 6900 group_member team_id user1_name user2_name user3_name user4_name 1 박지민 강영찬 김지영 박지영 2 이.. PL/SQL 반복문을 이용한 데이터베이스 초기화 2021. 10. 27. For문에서 select 사용 declare begin for emp_list in (select ename,hiredate from emp where hiredate> to_date('20/10/22') order by hiredate) loop dbms_output.put_line('사원이름 : ' || emp_list.ename); dbms_output.put_line('입사일 : ' || emp_list.hiredate); end loop; end; 테이블 일괄 삭제 SELECT 'DROP TABLE ' || object_name || ' CASCADE CONSTRAINTS;' FROM user_objects WHERE object_type = 'TABLE' ; 시퀀스 일괄 삭제 SELECT 'D.. 이전 1 다음