개발을 하다보면 30%이상이 Query를 작성해야 한다. 때로는 Query를 작성하기 위해 대부분의 시간을 보낸다고 해도 과언이 아니다.
Query 작성시 사용하면 좋은 습관을 몇가지 소개 하고자 한다.
1. Comma(,)를 앞에 놓고 Comma(,)의 Line 을 맞춘다.
이렇게 했을 경우, 가독성 뿐만 아니라 Comma(,)의 누락 실수를 줄일 수 있다.
또한, 다른 곳에 복사하여 사용하기가 참 편리하다.
SELECT SUBJECT
, TITLE
, DATE
FROM BOARD
2. Join시 조건절(ON)을 JOIN 아래에 맞춘다.
이렇게 했을 경우, 가독성, 조건의 누락등을 줄일 수 있다.
SELECT SUBJECT
, TITLE
, DATE
FROM BOARD BB INNER JOIN USER U
ON BB.ID = U.ID
AND BB.GRP_ID = U.GRP_ID
3. Query는 대문자로 작성한다.
MyBatis를 사용하는 경우 Query를 대문자로 작성하면 MyBatis의 param과 구분이 쉽게 된다.
4. MyBatis의 <where> 절을 사용한다.
보통 where 1=1 이렇게 기본적으로 넣는 경우가 있다.(많은 개발자들이 습관적으로 사용하기도 한다.)
MyBatis의 <where> tag를 사용하면 where 1=1과 같이 불필요한 query 를 사용하지 않아도 된다.
5. Driving Table을 먼저 사용한다.
데이터 조회시 적은 데이터가 있는 Table 을 Driving Table로 두어야 속도가 빠르다.
6. 1:N 구조의 데이터를 조회할 경우 MyBatis의 Collection 기능을 사용한다.
게시글 같은 경우 1:N의 첨부파일이 존재하고, 1:N의 댓글이 조회하는 경우가 있다.
이때, MyBatis의 Collection 기능을 사용하면, 한번의 Query로 조회가 가능하다.
다중 for문을 사용하지 않아도 최적의 결과를 빠르게 조회할 수 있다.
참조 : https://mybatis.org/mybatis-3/sqlmap-xml.html#nested-results-for-collection
이제 Query를 즐겨보자~
'[DATABASE]' 카테고리의 다른 글
[참고][Oracle] OGG란? CDC솔루션 쓰는 이유!! (116) | 2024.01.25 |
---|---|
[AWS] [DB] MSSQL DBLink(디비링크) 방법 (0) | 2022.07.12 |
ORACLE DB LINK for AWS (0) | 2022.07.12 |
[Oracle] DB Link (0) | 2022.07.12 |
댓글