어디서나 NOT BETWEEN date1 AND date2
where와 동등한 수를 처리 할 수있는 단일 JDBC 문을 작성하고 싶습니다.jdbc 쿼리 - 날짜 범위를 매개 변수로 사용
단일 쿼리는 동일한 SQL 문자열을 사용하여 JDBC 문을 만든 다음 다른 매개 변수를 제공한다는 의미입니다.
이렇게하면 기본 프레임 워크가 쿼리를 효율적으로 캐시 할 수 있습니다. (이전에 봤던 적이 있습니다.)
SELECT * FROM table WHERE mydate NOT BETWEEN ? AND ?
이상의 매개 변수
:기본적으로, 나는
SELECT * FROM table WHERE mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
의 동일하며 같은 시간에 적은 수의 매개 변수와 함께 사용할 수있는 쿼리를 찾으려면
SELECT * FROM table WHERE mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
AND mydate NOT BETWEEN ? AND ?
임시 테이블을 사용하는 것이 더 간단하고 효율적이라면 고려해 보겠습니다.
도움 주셔서 감사합니다!
배열은'IN'에서 작동하지 않습니다. 여전히 자리 표시자를 자동 생성해야합니다. – BalusC
배열 작업은 훌륭하지만 IN을 ANY (?)로 변환해야합니다. 매개 변수로 '{1,2,3}'문자열을 보내면 제대로 작동합니다. –