시작일과 종요일을 가지고 있는 레코드를 시작일과 종료일로 검색해서 가져오기
그누보드로 커스텀 한 사이트를 만들다 보면 간혹 게시글에 시작일/종료일과 같은 데이터를 추가로 입력해야 하는 경우가 있다.
그리고, 해당 시작일과 종료일을 가지고 검색을 할 때 시작일과 종료일을 포함하고 있는 모든 레코드를 가져오도록 해야 하는 경우가 있다.
아래와 같은 조건을 만족하는 쿼리이다.
| id | ct_sdate | ct_edate |
|---|---|---|
| 1 | 2012-01-01 | 2012-02-16 |
| 2 | 2012-02-01 | 2012-08-31 |
{:caption=“데이터 테이블”}
- 조건 1
- 검색조건:
sDate = 2020-01-01, eDate = 2012-01-30 - 결과:
1번만 조회
- 검색조건:
- 조건 2
- 검색조건:
sDate = 2011-12-01, eDate = 2011-12-30 - 결과: 조회 결과 없음
- 검색조건:
- 조건 3
- 검색조건:
sDate = 2012-02-01, eDate = 2012-02-28 - 결과:
1, 2번 모두 조회
- 검색조건:
- 조건 4
- 검색조건:
sDate = 2012-03-01, eDate = 2012-04-01 - 결과:
2번만 조회
- 검색조건:
- 조건 5
- 검색조건:
sDate = 2012-09-01, eDate = 2012-09-30 - 결과: 조회 결과 없음
- 검색조건:
(('$sDate' <= ct_sdate AND '{$eDate}' >= ct_sdate) OR ('{$sDate}' <= ct_edate AND '{$eDate}' >= ct_edate) OR (ct_sdate <= '{$eDate}' AND ct_edate >= '{$eDate}'))
# BETWEEN 사용
ct_sdate BETWEEN '{$sDate}' AND '{$eDate}' OR ct_edate BETWEEN '{$sDate}' AND '{$eDate}' OR (ct_sdate <= '{$sDate}' AND ct_edate >= '{$eDate}') 이 저작물은 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제 라이선스 에 따라 이용할 수 있습니다.
Comments
Related Posts
그누보드4 아이디 변경 함수 - 모든 테이블의 아이디를 변경
그누보드 사용시 아이디값을 이메일등으로 사용하거나 아이디를 변경하게 하도록 하는 사이트들이 존재 한다. 그누보드에서는 아이디 값이 게시판테이블에서나 포인트등 에서 회원을 구분하…
datepicker 시작일과 종료일 설정 시 사용하기 좋은 팁
웹 프로그래밍을 하다 보면 가끔 시작일과 종료일을 입력받는 프로그램을 제작하곤 한다. 사용자에게 날짜를 입력받아야 하는데 텍스트 박스만 떡하니 놔두면 사용자가 제대로 된 데이터를…