Q&A

  • query사용한 합산구하기
QUERY와 SQL을 사용해 한 필드의 갑을 구할려구 합니다.



이름 매출액



이런 필드에서 각 이름별로 매출액의 총합을 구할려고 하는데 잘 안되네요.



select sum(매출액) sum2 from main



ss:=sum2;



한후에 ss값을 보면 아무것도 안나오거나 0이 나옵니다.



select sum(매출액) sum2 from main where 이름:=aa

params('aa).asstring:=이름



이렇게 해두 안되더군요...

제가 합산 구하는건 첨 해보는데 계속 해메다 질문을 올립니다,.

자세히좀 가르켜 주시면 고맙겠네요.(제가 sql엔 좀 무지해서요..)

그럼 부탁드립니다 (__)

2  COMMENTS
  • Profile
    hobakpa 2001.02.08 05:09
    >

    > 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로 해야합니다.



    도움이 되셨으면 합니다.



    델파이의 데이타베이스관련 부분을 좀더 보시면 이해가 빠릅니다.

  • Profile
    아폴론 2001.02.08 18:18
    hobakpa wrote:

    > >

    > > select sum(매출액) sum2 from main

    > >

    > > ss:=sum2;

    > >

    > >

    > > select sum(매출액) sum2 from main where 이름:=aa

    > > params('aa).asstring:=이름

    >

    >



    위구문에서

    select sum(매출액) sum2 from main 에

    select sum(매출액) as sum2 from main 으로 'as' 추가하세요.