FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird Q&A
[1621] [질문] FireBird group by 에 대해...
아폴론 [apollon] 1765 읽음    2005-10-27 10:08
select
  case when substring(Tilno from 1 for 1) = '1' then  cast(sum(COALESCE(amnt,0)) as numeric(13))
          else 0                                                                             
  end "1번계",
  case when substring(Tilno from 1 for 1) = '2' then  cast(sum(COALESCE(amnt,0)) as numeric(13))
          else 0                                                                             
  end "2번계",
  case when substring(Tilno from 1 for 1) = '1' then 0
           when substring(Tilno from 1 for 1) = '2' then 0
           else cast(sum(COALESCE(amnt,0)) as numeric(13))
  end "기타계",
  cast(sum(COALESCE(amnt,0)) as numeric(13)) "총  계"
from tr110t

Tilno의 값에 따라 계를 내고 싶습니다.
위처럼  1번계, 2번계,  1번과 2번을 제외한 기타계, 전체를 합한 총계를 내고 싶습니다.
물론 한줄로요...

위문장은 Group By 절이 없어 에러를 냅니다.
Group by substring(Tilno from 1 for 1)  이렇게 하면 여러줄로 늘어나게 되지요...

max(substring(Tilno from 1 for 1)) = '1' ....
Group by substring(Tilno from 1 for 1)  이렇게 하면 한줄로 되는데...문제는 값이 정확하지 않다는 겁니다

자... 이럴때요...
어떻게 위의 SQL문으로 한줄의 합계를 나타낼 수 있을까요?
이것이 안되면 또 최대한으로 불러와서  루프를 돌려야 합니다....임시 테이블 만들고..더하고...지겨워라..

+ -

관련 글 리스트
1621 [질문] FireBird group by 에 대해... 아폴론 1765 2005/10/27
1622     Re:[질문] FireBird group by 에 대해... 아폴론 1999 2005/10/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.