mssql 통계 관련 질문

힘내라김대리 2018.12.10 17:47 Views : 765

안녕하세요. 프로젝트를 진행하다가 궁금한것이 있어 글을 남깁니다.


다른게 아니라 매출 sum 하는 쿼리입니다.


먼저 설명보다는 데이터를 가지고 설명을 하겠습니다.


데이터는 아래와 같이 있습니다.


ID | amount(매출)  |date(날짜) |price(공급가액) |start_dt(계약시작일자) |end_dt(계약종료일자)

AAA |3333.3333 |20180828 |300,000 |20180828 |20181125

AAA |3333.3333 |20180829 |300,000 |20180828 |20181125

AAA |3333.3333 |20180830 |300,000 |20180828 |20181125

AAA |3333.3333 |20180831 |300,000 |20180828 |20181125

AAA |3333.3333 |20180901 |300,000 |20180828 |20181125

AAA |3333.3333 |20180902 |300,000 |20180828 |20181125

AAA |3333.3333 |20180903 |300,000 |20180828 |20181125

AAA |3333.3333 |20180904 |300,000 |20180828 |20181125

.

.

.

.


이렇게 있습니다.

쿼리로 하면 

이 데이터를 월별로 sum을 하면
ID | amount(매출)  |date(날짜0 |price(공급가액) |start_dt(계약시작일자) |end_dt(계약종료일자)
AAA |13,333 |201808 |300,000 |20180828 |20181125
AAA |100,000 |201809 |300,000 |20180828 |20181125
AAA |103,333 |201810 |300,000 |20180828 |20181125
AAA |83,333 |201811 |300,000 |20180828 |20181125

이렇게 나옵니다.

공급가액은 300,000원이고, 원본 data에 내용을 기반으로 amount를 전체 sum 하면 300,000원이 나옵니다.

하지만 월별로 group by로 정렬했을때의 값은 299,999원이 나옵니다.

이럴때 값을 맞춰 줘야합니다.
기존)
ID | amount(매출)  |date(날짜0 |price(공급가액) |start_dt(계약시작일자) |end_dt(계약종료일자)
AAA |83,333 |201811 |300,000 |20180828 |20181125
변경)
ID | amount(매출)  |date(날짜0 |price(공급가액) |start_dt(계약시작일자) |end_dt(계약종료일자)
AAA |83,334 |201811 |300,000 |20180828 |20181125



머리로 생각했을때, 월별로 나온 amount(매출)와(과) price(공급가액)를(을) 비교했을때, price(공급가액) 보다 작으면 1을 더해야 한다.

하지만 쿼리로 작성하기에는 어렵더라구요...

어떻게 해야 할까요?? 
No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 45368
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 24245
10403 두가지 질문을 드립니다... [3] 슈토파이터 2018.12.26 775
10402 WHILE 문 관련질문.. [1] 후알유? 2018.12.24 645
10401 전체백업할 때 데이터 중복저장 되는 문제 [1] 팔개 2018.12.21 731
10400 CSV 파일 Import 시 콤마까지 포함시키는 방법 문의 [1] Seo 2018.12.21 1461
10399 데이터베이스 메일 발송 문제. [1] 신가이 2018.12.20 1911
10398 ora-02299 에러 질문드립니다.. [1] 시닙개발자 2018.12.20 837
10397 (세로 컬럼 - 가로 컬럼) SELECT 문) 질문 [2] 배움자세 2018.12.19 781
10396 인덱스열에 여러개넣는것과 1개씩 여러인덱스로나누는게 서로 다른가요 [2] freighter 2018.12.19 794
10395 sql 2017 문의 드립니다. [3] 죠리퐁 2018.12.18 733
10394 Ansi JOIN 과 TSQL JOIN차이가 뭔가요? [1] 초코렛뜨 2018.12.18 988
10393 이중루프쿼리문 수정문의 [1] 초코렛뜨 2018.12.18 722
10392 sa 비밀번호 1분마다 자동 설정 하늘이아빠 2018.12.17 900
10391 SQL 문의 (PIVOT 및 최신 데이타 가져오기) [1] sql바보 2018.12.17 818
10390 SQL 쿼리 관련 질문입니다.. [1] 고구망 2018.12.17 661
10389 쿼리문 합치기 mysql [4] Sol4644 2018.12.14 876
10388 운영 DB READ COMMITTED SNAPSHOT 옵션 적용 [3] 구로동라이더 2018.12.12 997
10387 insert 문 에서 특정 컬럼값들 가져오는방법 문의합니다. [2] 둘리맨 2018.12.12 798
» mssql 통계 관련 질문 [1] 힘내라김대리 2018.12.10 765
10385 체크제약조건 트리거 [4] 배움자세 2018.12.10 738
10384 View의 생성과 Table에 대한 직접적인 쿼리 접근에 관해 질문 드립니다. Ariellr 2018.12.07 1261





XE Login