<!--CodeS-->
if active then close;
sql.clear;
sql.add('select * from '+order_board);
sql.add(' where m_no = :a1');
sql.Add('and (out_date+lend_su) between :a2 and :a3');
parambyname('a1').asinteger := check_m_no;
parambyname('a2').asdate := strtodate(check_date);
parambyname('a3').asdate := strtodate(check_date)+check_su;
open;
<!--CodeE-->
out_date 필드에는 2005-8-26, lend_su 필드는 1
check_date = 2005-8-27
check_su = 1
이렇게 되어 있는데 데이타가 검색이 되지를 않네요.
뭐가 잘못 된 것인지...
Select 문에서 두개의 Field를 합치는 것과 Where 절에서 두개의 필드를 합치는 것은
엄연히 다른 결과가 나오거든요 그래서 아래의 쿼리를 다음과 같이 변경해 보세요.
Select (out_date+lend_su) as sumfield FROM Table_name
WHERE sumfield between :a2 and :a3
위의 쿼리문은 MS ACCESS에서 사용되는 쿼리문 입니다.
조회절에서 두개의 필드를 묶은 값을 조건으로 사용하기 위해서는 SELECT 절에서 하나의 필드로 정의해 준후
조회절에서 사용을 해야 겠지요.
이상 허접한 답변입니다.