지난번 성더기 님의 답을 보고 입력해보았지만...
초보의 미숙한 델파이 조작으로 여전히 실패했습니다.
그리구 에러가 Between의 시작 날짜에서는 안나고 왜 마지막 날짜 파라메터에서만 나는지.
코딩 내용을 아래와 같구
Close;
SQL.Clear;
SQL.Add('SELECT SUM(Account) as PartTotal');
SQL.Add('FROM Money');
SQL.Add('WHERE Kind = :v1 AND');
SQL.Add('Day BETWEEN :v2 AND :v3');
SQL.Add('Group BY Account');
ParamByName('v1').AsString := stringgrid1.Cells[i,0];
DecodeDate(Date, ny, nm, nd);
ParamByName('v2').AsDateTime := EncodeDate(ny, mm, 1);
----------------------------------------------------
ParamByName('v3').AsDateTime := EncodeDate(ny, mm, 31);
-----------------------------------------------------
Open;
----사이에 있는 문장에서 invaild argument어쩌꾸 하면써 Error가 납니다.
Day는 인터베이스 테이블에서 Date형으로 정의 하였습니다.
> 지난번 성더기 님의 답을 보고 입력해보았지만...
> 초보의 미숙한 델파이 조작으로 여전히 실패했습니다.
> 그리구 에러가 Between의 시작 날짜에서는 안나고 왜 마지막 날짜 파라메터에서만 나는지.
> 코딩 내용을 아래와 같구
> Close;
> SQL.Clear;
> SQL.Add('SELECT SUM(Account) as PartTotal');
> SQL.Add('FROM Money');
> SQL.Add('WHERE Kind = :v1 AND');
> SQL.Add('Day BETWEEN :v2 AND :v3');
> SQL.Add('Group BY Account');
> ParamByName('v1').AsString := stringgrid1.Cells[i,0];
> DecodeDate(Date, ny, nm, nd);
> ParamByName('v2').AsDateTime := EncodeDate(ny, mm, 1);
> ----------------------------------------------------
> ParamByName('v3').AsDateTime := EncodeDate(ny, mm, 31);
> -----------------------------------------------------
> Open;
>
> ----사이에 있는 문장에서 invaild argument어쩌꾸 하면써 Error가 납니다.
> Day는 인터베이스 테이블에서 Date형으로 정의 하였습니다.
위문장에서 sum 과 group by 를 같이 사용하실수 없읍니다.
sum(account) 를 해서 account 별로 그룹을 못합니다.