본문 바로가기

전체 글56

[ORACLE] 조인 쿼리(join query), 조인 종류, 조인 쿼리 예시 JOIN의 종류는 4가지입니다. 1. INNER JOIN 2. LEFT OUTER JOIN 3. RIGHT OUTER JOIN 4. FULL OUTER JOIN 1. INNER JOIN INNER JOIN은 교집합 연산자 입니다. 사용법 예시입니다. SELECT * FROM table A INNER JOIN table B ON A.조인키컬럼 = B.조인키컬럼 ; -- INNER은 생략하실 수 있습니다. 이렇게 사용하실 수도 있고, SELECT * FROM table A , table B WHERE A.조인키컬럼 = B.조인키컬럼 AND ~~ ; 이렇게 사용하실 수도 있습니다 다만 위의 방법보단 아래의 방법이 더 많이 쓰입니다. 2. LEFT OUTER JOIN LEFT OUTER JOIN은 A전체와 A,.. 2023. 1. 30.
[웹 개발] SI 프로젝트 개발순서/과정 프로젝트 순서(과정) 1. 요건 - 분석 결과 = 요구사항정의서 2. 설계 - UI설계, DB설계 결과 = 프로그램사양서, ERD, 테이블정의서, 컬럼정의서 (필요에 따라 생략가능) 3. 개발 - 단위테스트 (프로그램사양서를 보며 테스트 + 코드 확인) 4. 통합테스트 - 요건(요구사항정의서 요건별 테스트) 5. 서버오픈 이런식으로 운영됩니다. 2023. 1. 25.
[Oracle] 오라클 계층구조(트리구조)로 조회하기 (level, start with...connect by prior, order siblings by) 수행순서는 다음과 같습니다 1. START WITH 절에서 시작할 조건 탐색 - 트리구조 최상단에 들어갈 컬럼을 START WITH절에다가 넣으면 됩니다. 2. CONNECT BY 절에서 연결조건 탐색 - 자식 = 부모 or 부모 = 자식 차이는 자식 -> 부모로 방향을 잡느냐, 부모 -> 자식으로 방향을 잡느냐 입니다. 보통 자식 = 부모로 쓰입니다. 예를 들기 전에 PRIOR 은 상위 행을 참조하는 것으로 쉽게 설명하자면 부서별로, 팀별로 찾는 것입니다. 사용법은 아래와 같습니다. SELECT LEVEL , a , b , c FROM table WHERE 1=1 START WITH a = '*' CONNECT BY PRIOR b = a ORDER SIBLINGS BY c ; SIBLINGS 는 부모자.. 2023. 1. 25.
[DB, ORACLE] 오라클의 데이터타입(Datatype) 바이트(byte)와 자바의 byte 차이 (자바에서 디비로 문자열데이터 넘길때 바이트 차이) Oracle, MySQL 등 DB의 데이터 유형을 VARCHAR이나 VARCHAR2(10BYTE) 로 줬다고 가정합니다 실제 디비 쿼리문으로 작성을 해보면 UPDATE table SET 컬럼명 = 일이삼사오 WHERE 컬럼명 = '*' AND 컬럼명2 = '*' ; 라고 했을 때를 가정해봅시다 자바에서 데이터를 넘기면 오라클 기준 ORA-12899: ~~~ 열에 대한 값이 너무 큼(실제:15, 최대값:10) 이라는 에러가 발생할 것입니다. 이유는 자바에서 한글 데이터를 넘겼을 때 DB의 'CHARACTER SET'이 'UTF-8'로 설정되어 있으면 한글의 문자크기를 3BYTE로 들고가기 떄문에 에러가 발생하는 겁니다. 따라서 자바에서 받는 한글 문자열은 3byte로 생각하고 table내 데이터타입(크기).. 2023. 1. 25.