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
운영게시판
최근게시물
MS-SQL Q&A 7238 게시물 읽기
No. 7238
쿼리문 보완좀 부탁드립니다.
작성자
홍길동
작성일
2021-08-25 13:45
조회수
1,074

select

      sum(s.cnt) as a1, s.INDATE as a2,m.SANAME as a3, s.code as a4, s.DANGA as a5,s.pumcd as a6

      from gunguk AS s

      left outer join jUNPYO as m

     on m.CODE = s.CODE

     and m.INDATE = s.INDATE

     where  s.pumcd = 'J0000442'

    group by s.INDATE,m.SANAME, s.code, s.DANGA, s.pumcd

    order by a2 desc,a4 desc

--------------------------------------------------------------

a1      a2         a3                       a4   a5       a6

--------------------------------------------------------------

2664   79955    멍게수협               8    11100   J0000442

2663   79955    동아시아               7    10963   J0000442 

1        79955    동아시아               7    11792   J0000442

1600   79950    창영                    16    9700    J0000442

3200   79950    통영조합법           14    9600    J0000442

1599   79950    멍게                    12    9488    J0000442

3100   79950    멍게                    12    9500    J0000442

1        79950    멍게                    12    9688    J0000442

3300   79950    김금진                   9    9500    J0000442

=======================================

a1 합산값이 5000 까지만 불러오고 싶습니다.

제가원하는 결과는

--------------------------------------------------------------

a1      a2         a3                       a4   a5       a6

--------------------------------------------------------------

2664   79955    멍게수협               8    11100   J0000442

2663   79955    동아시아               7    10963   J0000442  ------여기까지만


 

이 글에 대한 댓글이 총 2건 있습니다.
SELECT *
  FROM (SELECT SUM(s.cnt) AS a1
             , s.indate   AS a2
             , m.saname   AS a3
             , s.code     AS a4
             , s.danga    AS a5
             , s.pumcd    AS a6
             , SUM(SUM(s.cnt)) OVER(
               ORDER BY s.indate DESC, s.code DESC
                      , s.danga  -- 정렬 항목 추가 --
               ) x
          FROM gunguk s
          LEFT OUTER JOIN junpyo m
            ON m.code   = s.code
           AND m.indate = s.indate
         WHERE s.pumcd  = 'J0000442'
         GROUP BY s.indate, m.saname, s.code, s.danga, s.pumcd
        ) a
 WHERE x - a1 < 5000
;

정렬 기준항목인 (a2, a4) 가 유일하지 않아
유일성을 보장해 줄 수 있는 항목(a5)를 정렬키로 추가해 줘야 합니다.

 
마농(manon94)님이 2021-08-25 14:27에 작성한 댓글입니다.

마농(manon94)님

답변 진심으로 감사드립니다.

김상홍(softwarecom)님이 2021-09-10 12:19에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
7243서브쿼리 튜닝 문의 [1]
뉴비
2021-12-06
858
7240오라클  트리거 를 MSSQL 전환 문의 드립니다. [1]
김병훈
2021-10-01
932
7239중복되는 시간을 제거(포함) 하고 시작시간과 종료시간을 구하고 싶습니다. 쿼리 도움좀 부탁드려요. [1]
박인규
2021-08-27
1044
7238쿼리문 보완좀 부탁드립니다. [2]
홍길동
2021-08-25
1074
7237쿼리결과에 없는 데이터도 표시되게 하고 싶어요 [2]
바보온달
2021-08-20
962
7236mssql query 질문 [1]
질문쟁이
2021-07-20
1090
7235계산식으로 된 컬럼을 계산하고 싶습니다. [2]
바보온달
2021-06-10
1205
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.060초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다