JOIN DELETE (Multiple-table Delete)


두개의 테이블을 조인하여 UPDATE를 실행하는 것(JOIN UPDATE)과 같이,

두개의 테이블을 조인하여 그 결과 레코드를 삭제하는 것도 가능하다.

이를 JOIN DELETE 또는 Multiple-Table DELETE라고 하는데,
JOIN DELETE는 아래 두 가지 문법으로 작성할 수 있다.

  • DELETE와 FROM 절 사이에 삭제할 테이블 명시

    DELETE
     t1, t2 
    FROM test1 t1 INNER JOIN test2 t2 INNER JOIN test3 t3
    WHERE t1.id=t2.id 
      AND t2.id=t3.id;

  • FROM과 USING 절 사이에 삭제할 테이블 명시
    DELETE 
    FROM t1, t2 
      USING test1 t1 INNER JOIN test2 t2 INNER JOIN test3 t3
    WHERE t1.id=t2.id 
      AND t2.id=t3.id;

JOIN DELETE에서도 주의해야 할 사항이 있는데,
  • 조인 결과 레코드가 삭제되는 테이블이 어느 테이블인가 ?
    • 첫번째 문법에서는 DELETE 키워드와 FROM 절 사이에 명시된 테이블의 레코드만 삭제한다.
    • 두번째 문법에서는 FROM 절과 USING 절 사이에 명시된 테이블의 레코드만 삭제한다.
    • 위의 두 예제에서는 t1(test1) 테이블과 t2(test2) 테이블의 레코드만 삭제하게 된다. t3(test3)의 레코드는 조인에만 참여하고 삭제되지는 않는다.
  • 테이블의 별명(Alias)는 어디에서 정의해야 하는가 ?.
    • 첫번째 문법에서는 FROM 절 이하에서 테이블의 별명(Alias)를 지정하며, 이 이외의 위치에서는 Alias를 지정할 수 없고, FROM 절에서 정의된 Alias를 사용만 해야 한다.
    • 두번째 문법에서는 USING 절 이하에서만 테이블의 별명(Alias)를 정의해야 한다.


'DataBase > MySQL' 카테고리의 다른 글

[CentOS] mysql, maria DB sql 파일 import  (0) 2016.02.29
CentOS 7 mariaDB  (0) 2016.02.29
MySQL] dump / import  (0) 2016.01.24
[MySQL] Date 날짜 형식 바꾸기  (0) 2015.09.21
mySQL 접속 & 재시작  (0) 2015.02.16

[MySQL] Date 날짜 형식 바꾸기


날짜 형식 "yyyy-mm-dd hh:mi:ss"

DATE_FORMAT( 테이블명 or  컬럼명 or 테이블명.컬럼명, '%Y-%m-%d %H:%i:%s' ) AS XXX

예) 쿼리

SELECT 

A.commonID AS commonId,

A.ResourceDomain AS resourceDomain,

A.UseYN AS useYN,

DATE_FORMAT(A.RegDate, '%Y-%m-%d %H:%i:%s' ) AS regDate,

DATE_FORMAT(A.UpdateDate, '%Y-%m-%d %H:%i:%s' ) AS updateDate

FROM top_commoninfo A

WHERE A.CommonID = #{commonId}


예) 자바에서

http://stackoverflow.com/questions/21879382/convert-string-to-mysql-date-format

형식들

http://j07051.tistory.com/606

'DataBase > MySQL' 카테고리의 다른 글

[CentOS] mysql, maria DB sql 파일 import  (0) 2016.02.29
CentOS 7 mariaDB  (0) 2016.02.29
MySQL] dump / import  (0) 2016.01.24
[MySQL]DELETE Join delete  (0) 2015.09.21
mySQL 접속 & 재시작  (0) 2015.02.16


Window -> Preferences -> Java -> Code Style -> Code Templates -> Comments -> Types

edit 아래 복사



/**

 * 여기에 간단한 설명을 입력하세요.

 *

 * @author Jaehoon, Kim

 * @since ${date}

 * @version 버전

 * @see

 * ${tags}

 *

 * 

 * << 개정이력(Modification Information) >>

 *

 * 수정일              수정자                 수정내용

 * ------------    ------------    ---------------------------

 * ${date}     Jaehoon, Kim          최초 생성

 *

 * 

 */

'Programming > IDE' 카테고리의 다른 글

[Ecllipse] 패키지 알리아스  (0) 2016.02.23
[eclipse] Eclipse Android SDK ERROR  (0) 2016.01.05
[eclipse] get,set 단축키  (0) 2015.07.16
[Eclipse] java was started but returned exit code=1  (0) 2015.07.02
WebStorm svn 세팅 및 사용  (0) 2015.05.12

@ResposeBody로 JSON 형식을 받을때, 

jackson 2.x 에서는 null일 때 출력값이 null 항목 제거 표현시 Dto(Vo)에서 @JsonInclude(Include.NON_NULL) 어노테이션 사용.


ex)


@JsonInclude(include.NON_NULL)

public class DataDto {

private int idx;

private String id;

private String name;

.

.

.

}

+ Recent posts