Archives
10-27 17:41
Today
9
Total
287,042
관리 메뉴

FILife

MS-SQL과 mysql의 BETWEEN 본문

내가 자꾸 까먹어서 쓰는 개발 이야기/MySQL, MariaDB

MS-SQL과 mysql의 BETWEEN

FIL 2013. 1. 28. 17:58

날짜 검색시에만 해당.


2013년1월1일부터 2013년1월28일까지 검색하는 경우,


dt '2013-01-01' BETWEEN '2013-01-28'과 같이 검색하는 경우가 있는데,


MS-SQL은 우항인 2013-01-28까지 포함한 범위를 검색한다.


반면, mysql은 우항이 제외된 2013-01-27까지 검색을 하게 되는데,


이는 '2013-01-28'이 '2013-01-28 00:00:00' 로 간주되어, 날짜 분계선이므로 포함되지 않는다고 한다.


dt>='2013-01-01' AND dt<='2013-01-28' 과 같이 검색하거나,


CAST(dt AS DATE) BETWEEN '2013-01-01' AND '2013-01-28' 과 같이 검색하면 해결 된다고 한다.


(단, mysql 4.x 이하에서의 CAST()는 데이터 타입은 변경하나 값은 변하지 않는다고 한다.)



출처 : http://stackoverflow.com/questions/5080824/mysql-between-clause-not-inclusive

0 Comments
댓글쓰기 폼