티스토리 뷰
이번에 날짜별로 검색을 하는 쿼리를 짜면서 제약조건이 정말 중요하다는 것을 알았다.
날짜별로 검색할 때 고려해야 할 것
1. 년도
2. 월
3. 날짜
4. 시간
년도 별로 검색하기
(테이블의 데이터 컬럼의 정의에 따라 달라질 수 있음) DATE 형태라고 가정..
2016년 ~ 2017년
=>> 201601010000 ~~ 201712310000
로 검색을 해야한다.
'YYYYMMDDHH24MI'
은 현재 날짜의 형태를 어떻게 출력하겠냐는 것이다. 년월일시분 까지 한다는 의미이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <!-- 검색조건 부여 --> <sql id="sms_status"> <isNotEmpty property="search_year"> <isNotEmpty property="search_month"> <![CDATA[AND A.REGDATE BETWEEN to_date( #search_year#||#search_month#||'010000', 'YYYYMMDDHH24MI' ) AND to_date( (SELECT TO_CHAR(LAST_DAY(#search_year#||#search_month#||'01'), 'YYYYMMDD') FROM DUAL), 'YYYYMMDDHH24MI' )+0.99999]]> </isNotEmpty> <isEmpty property="search_month"> <![CDATA[AND A.REGDATE BETWEEN to_date( #search_year#||'01010000', 'YYYYMMDDHH24MI' ) AND to_date( #search_year#||'12310000', 'YYYYMMDDHH24MI' )+0.99999]]> </isEmpty> </isNotEmpty> </sql> | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <select name="search_year" id="search_year"> <option value="" <c:if test="${searchVO.search_year == ''}">selected="selected"</c:if> >전체년도</option> <c:forEach begin="0" end="15" varStatus="status"> <option value="${nowYear - status.current}" <c:if test="${searchVO.search_year == nowYear - status.current}">selected="selected"</c:if> >${nowYear - status.current}년</option> </c:forEach> </select> <select name="search_month"> <option value="">전체월</option> <c:forEach begin="1" end="12" varStatus="status"> <c:if test="${status.current < 10}"> <option value="0${status.current}" <c:if test="${searchVO.search_month == status.current}">selected="selected"</c:if> >${status.current}월</option> </c:if> <c:if test="${status.current >= 10}"> <option value="${status.current}" <c:if test="${searchVO.search_month == status.current}">selected="selected"</c:if> >${status.current}월</option> </c:if> </c:forEach> </select> | cs |
'spring 스프링 > iBatis 아이바티스' 카테고리의 다른 글
[iBatis] isNotEqual 사용법 (0) | 2017.07.23 |
---|
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- SQL
- 르프리크
- 톰캣
- 이클립스
- 터미널
- server.xml
- 오라클
- 성수밥
- Apach
- html
- tree로만들기
- floating button
- 토라식당
- 메뉴관리
- 최고심
- 아파치
- 조직도관리
- Mac
- 위잇딜라이트
- Oracle
- Lalavel
- 정규식
- jstree
- Tomcat
- Eclipse
- 성수뚝떡
- 힘냉면록
- 맥
- node관리
- input
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함