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 9716 게시물 읽기
No. 9716
이 쿼리 방법이 있나요?
작성자
이기자(k3i2)
작성일
2016-09-22 15:39
조회수
8,069

select d.gubun, d.sub_gubun, max( d.geum1 ) As geum1, sum( d.geum1 ) as tgeum, count(d.*)as cnt

from(

select '111' As gubun, 'a' as sub_gubun, 1000 As geum1

union all

select '111' As gubun, 'b' as sub_gubun, 1700 As geum1

union all

select '222' As gubun, 'b' as sub_gubun, 1500 As geum1

)d

group by d.gubun, d.sub_gubun

order by d.gubun, d.sub_gubun

 

결과값은:

"111";"a";1000;1000;1

"111";"b";1700;1700;1

"222";"b";1500;1500;1

이렇게 나오는데요,

 

"111";"a";1000;2000;2

"111";"b";1700;2700;2

"222";"b";1500;1500;1

이렇게 나올수는 없나요?

 

네번째 항목은 세번째의 합, 다섯번째 항목은 d.gubun의 row수...

 

이렇게 저렇게 해봐도, 쿼리작성 능력부족이네요. T.T

 

 

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

이건 안될까요...?

with n as (

select d.gubun, d.sub_gubun, max( d.geum1 ) As geum1, sum( d.geum1 ) as tgeum, count(d.gubun)as cnt

 

from(

 

select '111' As gubun,'a' as sub_gubun, 1000 As geum1

 

union all

 

select '111' As gubun,'b' as sub_gubun, 1700 As geum1

 

union all

 

select '222' As gubun, 'b' as sub_gubun, 1500 As geum1

 

)d

 

group by d.gubun, d.sub_gubun

order by d.gubun, d.sub_gubun

)

select gubun, sub_gubun, geum1, tgeum, (select count(cnt) from n where n.gubun = nn.gubun group by gubun) from n nn

group by gubun, sub_gubun, geum1, tgeum

 

김형수(kims)님이 2016-09-23 13:05에 작성한 댓글입니다.

--윈도우 함수 사용하시면 됩니다.

-- 네번째가 누적값 맞나요?

 

select

d.gubun,

d.sub_gubun,

d.geum1,

SUM(d.geum1) OVER (PARTITION by gubun order by sub_gubun),

count(*) OVER (PARTITION by gubun)

from(

select '111' As gubun, 'a' as sub_gubun, 1000 As geum1

union all

select '111' As gubun, 'b' as sub_gubun, 1700 As geum1

union all

select '222' As gubun, 'b' as sub_gubun, 1500 As geum1

)d

 

지현명(gwise)님이 2016-10-17 18:11에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
9720postgresql 관련 문의 [1]
탁구공
2016-10-12
8012
9719pgadmin 질문이요 edit data 창 수정 [3]
천구
2016-10-12
8046
9718DB 접속 불가 문제 도와주세요ㅠㅠ [1]
검콤이
2016-10-10
7808
9716이 쿼리 방법이 있나요? [2]
이기자
2016-09-22
8069
9715AIX 신규 설치 시 make 오류 [4]
NK
2016-09-20
8494
9714char형식 시간계산도와주세요 [1]
김승규
2016-09-13
8035
9711[PGSQL] 데드 락 관련 해결방법 질문 드립니다. [1]
popo
2016-09-05
9025
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다