채택완료

필드 2개가 기간안에 들어간 데이터를 검색하는 방법 문의 드립니다.

2017-09-13 (수) 23:20:51 2,666

※ 질문 내용은 표준어로 에러 메세지 및 로그를 포함하여 답변자가 이해하기 쉽게 최대한 자신이 처한 상황 및 질문 내용을 깔끔하게 정리하여 올려 주셔야 합니다.

필드 2개가 기간안에 들어간 데이터를 검색하는 방법 문의 드립니다.

예를들어서

2017-09-01 ~ 2017-09-14 까지 검색을 한다고 치고

테이블에

시작일 | 종료일

2017-09-02 | 2017-09-03

2017-09-14 | 2017-09-16

2017-10-01 | 2017-10-06

이런식으로 테이블에 데이터가 있을때

해당데이터 안에 들어갔을때 검색이 되게 하고 싶은데 어떻게 해야 쉬운 방법일까요;; 전문가님들의 의견 부탁드려요^^; ㅋ

결과값

2017-09-02 | 2017-09-03

2017-09-14 | 2017-09-16

|

답변 2개

채택된 답변
+20 포인트

수학시간에 배운거 같은데 기억이 가물가물 합니다.  


검색기간을 A~B라 하고 

DB 시작일 종료일을 C, D 라고 하시면 

시작일(C) 가 A보다 작다면 종료일(D) 는 A보다 커야 합니다 

시작일(C) 가 A보다 크다면 시작일(C) 는 B보다 작아야 합니다


('시작일'<='2017-09-01' AND '종료일' >='2017-09-01')

OR  

('시작일'>='2017-09-01' AND '시작일' <='2017-09-12') 


2017-09-14 (목) 00:38:45
Copy
$sql = "SELECT * FROM 테이블이름 WHERE 시작일 > '2017-09-01' AND 종료일 <= '2017-09-14'";

하시면 될듯해요

답변을 작성하려면 로그인이 필요합니다.