모든 데이터를 동일한 데이터 유형으로 가져와야합니다. 그런 식으로 비교하고 조작하기가 더 쉽습니다. 문자열 값을 날짜 값으로 변환하지 않으시겠습니까? 프로젝트 디렉토리에 grails console
를 열고 시도 이 :이 출력 받아야
String myDate1 = "11/28/2014"
def newDate1 = new Date().parse("M/d/yyyy", myDate1)
println "newDate1 = ${newDate1}"
println "newDate1 plus one day = ${newDate1 + 1}"
String myDate2 = "11/28/2014 12:00:00 AM"
def newDate2 = new Date().parse("M/d/yyyy H:m:s a", myDate2)
println "newDate2 = ${newDate2}"
println "newDate2 plus one day = ${newDate1 + 1}"
:
newDate1 = Fri Nov 28 00:00:00 PST 2014
newDate1 plus one day = Sat Nov 29 00:00:00 PST 2014
newDate2 = Fri Nov 28 12:00:00 PST 2014
newDate2 plus one day = Sat Nov 29 00:00:00 PST 2014
을 그리고 당신이 말한대로 필터링해야합니다 있도록이 매우 큰 데이터베이스가 아닙니다 당신의 로드 된 배열을 검색합니다. 그러나 일단 날짜로 값을 가지면 "더 큰 것"과 "적은 것"의 값을 비교할 수 있습니다.
1) 데이터베이스 열을 수정할 수 있습니까 (아니면 최소값으로 정규화 할 수 있습니까)? 2) 계산 열을 추가 할 수 있습니까? 3) [계산 된/구체화 된] 뷰를 추가 할 수 있습니까? 4) 검색 작업의 유형 *이 필요합니다 - 날짜의 _ 특정 _ 날짜 또는 _ 범위 _ 5) 검색에 허용되는 최악의 성능 한계/복잡성은 얼마입니까 (예 : 몇 개의 행이 있고 어떤 다중성이 관련되어 있습니까?). – user2864740
은 SQL을 사용하는이 데이터베이스입니까? – Rafael
1) 수정할 수 없습니다. 2) 계산 된 열이 아마도 가장 빠른 접근 방식 일 것입니다. 3) 내가 바라는 견해입니다. 4) 날짜의 범위와 특정 날짜. 4) 최근 annoucned 데이터 제한 이전에 우리는 수백만 행 범위였습니다. –