본문 바로가기

프로그래밍/Database

(13)
Oracle_MERGE INTO 문 MERGE INTO 문 데이터를 처리할 때 데이터의 존재 여부를 SELECT하고 해당 값이 없으면 INSERT 처리, 있으면 UPDATE 처리함 MERGE INTO 문을 사용하면 데이터의 존재 여부를 확인하는 쿼리 (SELECT), 데이터를 삽입하는 쿼리 (INSERT), 데이터를 수정하는 쿼리 (UPDATE)를 한 번에 처리할 수 있다. MERGE INTO 문 사용 예시 MERGE INTO EXAMPLE_A A -- UPDATE 또는 INSERT할 테이블|뷰 USING EXAMPLE_B B -- 있는지 없는지 조회할 대상이 되는 테이블|뷰|서브쿼리 ON (A.EXAMPLE_NO = B.EXAMPLE_NO) WHEN MATCHED THEN -- 조건이 일치하는 경우 UPDATE SET A.EXAMPLE_..
Oracle_WHERE 1=1 WHERE 1=1 동적 쿼리에서 특정상황마다 WHERE절을 다르게 작성해줘야 할 때 편리하다. 동적 쿼리에서 if문을 사용하여 조건을 특정상황마다 바꾸고 싶을 때 WHERE 1=1 선언 후 AND 조건을 적어주면 된다. 단, 일반 쿼리문 작성시 WHERE 조건의 1=1은 무의미하다. 번호, 이름, 시작일, 마지막일 조회하는 기능 AND PM.PR_NO like '%' || upper(#{prNo}) || '%' AND PM.PR_CMPY_CD like '%' || #{prCmpyCd} || '%' = #{prStartDt}]]> SELECT PM.PR_NO AS prNo , PM.PR_CMPY_CD AS prCmpyCd , CD.DESC_KOR AS prCmpyNm , TO_CHAR(PM.PR_START..
MySQL_JAVA DB 연결 (select, delete) DBHelper 클래스> DB 연결 완료 > DBHelper 에서 오류가 발생 했어! HTML 삽입미리보기할 수 없는 소스→ DB에 있는 부분을 연동하려면 Connection 객체가 필요하다. 주소, 포트 번호, 데이터베이스 이름, 사용할 문자셋, 계정, 비번으로 접근하여 활용 가능한 부분들을 Connection이라는 객체에 저장한다. IBlogDAO인터페이스 (select, delete)HTML 삽입미리보기할 수 없는 소스→ 인터페이스에서 만들고자 하는 기능의 틀을 만들어 UserDAO에서 구현한다. BlogDTO 클래스HTML 삽입미리보기할 수 없는 소스→ 데이터베이스의 데이터에 접근하여 데이터를 가져오기 위해 데이터들을 멤버 변수로 생성하고 get, set 메서드를 만든다. BlogDAO 클래스> ..
MySQL_GROUP BY절 GROUP BY 절 GROUP BY 절은 데이터들을 원하는 그룹으로 나눌 수 있다. 나누고자 하는 그룹의 컬럼명을 SELECT절과 GROUP BY절 뒤에 추가하면 된다. 집계함수와 함께 사용되는 상수는 GROUP BY절에 추가하지 않아도 된다. GROUP BY 예제 HTML 삽입 미리보기할 수 없는 소스 → GROUP BY를 이용하여 성별로 나눈 예제이다. HTML 삽입 미리보기할 수 없는 소스 → employees를 기본테이블로 LEFT JOIN하여 GROUP BY를 사용하여 dept_no로 나눈 후 dept_no가 'd001'인 사람의 정보를 출력하는 예제이다. → GROUP BY 절에서는 WHERE 절 대신 HAVING 절을 사용해야 한다.
MySQL_N : M 관계 N : M 관계 N : M (다대다) 관계는 관계를 가진 양쪽 엔티티 모두에서 1 : N 관계를 가지는 것을 말한다. ex) 한 명의 학생이 여러 과목을 수강하고, 한 과목에 여러 명의 학생이 수강하는 경우이다. 학생 테이블 : 과목 테이블 = N : M → 중간에 수강 테이블을 둬서 두 테이블 사이의 관계를 나타낸다. HTML 삽입 미리보기할 수 없는 소스 person, city, travel 테이블 생성 HTML 삽입 미리보기할 수 없는 소스 person 테이블 city 테이블 travel 테이블 JOIN 구문을 활용한 문제 HTML 삽입 미리보기할 수 없는 소스 INNER JOIN을 이용하여 성이 김씨인 사람이 여행 간 곳을 조회 LEFT JOIN을 이용하여 person을 기준테이블로 도쿄에 간 사..
MySQL_MySQL FUNCTION MySQL Function HTML 삽입 미리보기할 수 없는 소스
MySQL_JOIN 구문 INNER JOIN, LEFT JOIN, RIGHT JOIN INNER JOIN SELECT 열 목록 FROM 기준 테이블 INNER JOIN 참조할 테이블 ON 조인 조건 WHERE 검색조건 → ID값이 서로 중복되는 값만 리턴한다. LEFT JOIN 또는 RIGHT JOIN SELECT 열 목록 FROM 기준 테이블 LEFT JOIN(or RIGHT JOIN) 참조할 테이블 ON 조인 조건 WHERE 검색조건 → 기준 테이블 값의 전체와 기준 테이블의 KEY값과 참조할 테이블의 KEY값이 같은 결과를 리턴한다. userTBL, buyTBL 테이블 생성 HTML 삽입 미리보기할 수 없는 소스 userTBL 테이블 buyTBL 테이블 INNER JOIN, LEFT JOIN, RIGHT JOIN사용 예제 HTML 삽입 미리보기할 수 없는 소스 → 테이블 이름이 길거..
MySQL_preparedstatement LIKE 쓰는 법 → pstmt.setString 부분에서 "%"를 붙여주어야 할 부분에 붙여주면 됩니다. MainTest 클래스