database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 7580 게시물 읽기
No. 7580
합계를 내려고 하는데 잘 안돼서 질문 드립니다.
작성자
작성일
2008-12-23 17:16
조회수
6,934

테이블 이름은 a_table입니다.

no  name  amount1  amount2  amount3  amount4   etc  s_date

1   홍길동      3,000     -1,000      4,000         5,000   OK  081101 

2   김철수      1,000     -2,000      4,000         4,000         081101

3   김영희      2,000     -3,000      3,000         4,000   OK  081101

4   홍길동      6,000     -1,000      4,000         5,000         081102

5   김철수      2,000     -2,000      4,000         4,000   OK  081103

6   김영희      4,000     -3,000      3,000         4,000   OK  081104


위와 같은 테이블에서

지정날 날짜 사이에 name별로 합계를 내려고 하는데요.

amount1 ~ amount3은 전체 합계가 나와야하구요. amount4만 etc가 OK인것만 합계를 내야하는데..


결과가 다음과 같이 나와야 합니다.

name  amount1  amount2  amount3  amount4

홍길동     9,000      -2,000       8,000       5,000

김철수     3,000      -4,000       8,000       4,000

김영희     6,000      -6,000       6,000       8,000




SELECT name, SUM(amount1), SUM(amount2), SUM(amount3), SUM(amount4) FROM a_table

WHERE (s_date >= 081101 and s_date <= 081104)

GROUP BY name;

여기까지는 되는데.. amount4의 합계는 etc가 OK인것만 합계가 나와야하는데 어디에 어떤 조건을 줘야하는지 모르겠네요...

이 글에 대한 댓글이 총 4건 있습니다.

글을 쓰고 있는 중에 로그아웃이 되버렸나보네요...

최현덕(hdchoi)님이 2008-12-23 17:18에 작성한 댓글입니다.

select ...

sum(case when etc = 'OK' then amount4 end)

from t

where ...

group by ...

 

 

xxx님이 2008-12-23 19:23에 작성한 댓글입니다. Edit

답변 감사합니다.

제가 사용하고 있는 DB를 말씀안드렸네요.

MS Access에서 사용할 SQL 입니다.

Access는 case가 먹질 않네요...

최현덕(hdchoi)님이 2008-12-23 21:56에 작성한 댓글입니다.
이 댓글은 2008-12-24 09:21에 마지막으로 수정되었습니다.

여기는 PostgreSQL 게시판이예요......

지나가다님이 2008-12-26 08:34에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
7583- [3]
압피
2009-01-04
6330
7582- [2]
압피
2008-12-31
6588
7581검색을 할려고 하는대 너무 느려서 질문드립니다. [3]
나윤성
2008-12-30
6462
7580합계를 내려고 하는데 잘 안돼서 질문 드립니다. [4]
2008-12-23
6934
7579EUC_KR을 Postgresql에 처음 적용 시키신 분을 찾고 있습니다. [2]
박춘삼
2008-12-23
6643
7578하루에 한번씩 테이블을 생성하려고합니다. [3]
김종석
2008-12-19
6280
7576CREATE TABLE 때 DATE Format 처리 방법을 알려 주세요 [4]
박춘삼
2008-12-18
6805
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다