QUERY와 SQL을 사용해 한 필드의 갑을 구할려구 합니다.
이름 매출액
이런 필드에서 각 이름별로 매출액의 총합을 구할려고 하는데 잘 안되네요.
select sum(매출액) sum2 from main
ss:=sum2;
한후에 ss값을 보면 아무것도 안나오거나 0이 나옵니다.
select sum(매출액) sum2 from main where 이름:=aa
params('aa).asstring:=이름
이렇게 해두 안되더군요...
제가 합산 구하는건 첨 해보는데 계속 해메다 질문을 올립니다,.
자세히좀 가르켜 주시면 고맙겠네요.(제가 sql엔 좀 무지해서요..)
그럼 부탁드립니다 (__)
> select sum(매출액) sum2 from main
>
> ss:=sum2;
>
>
> select sum(매출액) sum2 from main where 이름:=aa
> params('aa).asstring:=이름
with query do begin
Close;
sql.clear;
sql.add('select sum(매출액) sum2 from main where 이름 =:aa');
parambyname('aa').AsString := aa;
open;
end;
위에서 처럼 코딩하시면 결과 셋이 나옵니다.
그결과를 변수에 넣으시려면
ss := query.fieldByname('sum2').AsString;
위에서 실수하기 쉬운건 sum할 필드가 string 이면 AsString로 하고 ss도 스트링으로 선언.무론 intger형이면 asinteger로 하고 ss 도 integer로 해야합니다.
도움이 되셨으면 합니다.
델파이의 데이타베이스관련 부분을 좀더 보시면 이해가 빠릅니다.