일정관리 프로그램을 만드는 중인데 조회조건이 헷갈립니다. 0 2 1,378

by 재동이_김재훈 [2017.02.15 19:51:05]


처음에는 단순히

    SELECT  EVENT_NO, 
               EVENT_ID, 
               EVENT_TYPE, 
               EVENT_NAME, 
               EVENT_DESC, 
               START_DT, 
               END_DT, 
               CREATE_DT, 
               CREATE_USER_ID
          FROM EVENT
         WHERE CONVERT(VARCHAR, START_DT, 126) >= CONVERT(DATE, #start_dt#) 
                   AND CONVERT(VARCHAR, END_DT, 126) <= CONVERT(DATE, #end_dt#)

이런 식으로만 조회를 하고 있었습니다.

월간 화면에서 조회를 했을 때

해당 월의 시작일과 종료일만 구해서 넘겨주면 잘 조회가 되는 줄 알고 있었는데

달이 넘어가도록 이어지는 일정을 조회를 할 수 없더라구요...

 

급격히 멘붕에 빠져서 이걸 어떻게 처리하는 게 좋을지 감이 안 잡히네요....

도움 좀 부탁드리겠습니다.

 

by jkson [2017.02.15 21:52:57]
SELECT  EVENT_NO, 
        EVENT_ID, 
        EVENT_TYPE, 
        EVENT_NAME, 
        EVENT_DESC, 
        START_DT, 
        END_DT, 
        CREATE_DT, 
        CREATE_USER_ID
   FROM EVENT
  WHERE START_DT <= CONVERT(DATE, #end_dt#) 
    AND END_DT >= CONVERT(DATE, #start_dt#)

그런데 START_DT, END_DT가 날짜형 같은데 왜 문자형으로 CONVERT를 하시는 거죠?


by 마농 [2017.02.16 09:38:12]

기간 검색은 - 시작일과 종료일을 교차비교
조건 검색은 - 컬럼을 조건값 형태로 변경하지 말고(X), 조건값을 컬럼 형태로 변경(O)

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입