초보 쿼리 문의..

콩만듀 2017.10.12 16:21 Views : 5018



안녕하세요. sql초보 중의 초보 입니다.

기본지식 없이 실무를 하고 있는데요..

경영자 정보시스템에 들어가는 테이블들을 DateMart에 만들고 있습니다.

아는게 적어 다소 무식하게 작성 중이니 양해부탁드립니다.

isnull을 넣은것은 지금 데이터가 다 들어가 있지 않아서 확인차원에서 넣었습니다.


질문입니다.

1. 아래에 빨간 쿼리문들이 문법상 정상인건지?

2. 문제가 없을 경우 조건을 기준일 이전으로 하고 싶은데 어떻게 조건을 줘야하는지?

- 예를들면 10/10을 기준일로 조회할 경우 10/9까지의 데이터 합계만 나오도록..

- WHERE절에 dDate >= GETDATE() 하면 되는건가요?

- 가르침 주십시요 꾸벅 _ _


SELECT
  C.PrjNo AS PrjNo,
  GETDATE() AS dDate,
  (isnull(A.ExecTotAmt,0) + isnull(B.ExecTotAmt,0)) AS PlnMcost,
  A.ExecTotAmt AS PlnExMCost,
  B.ExecTotAmt AS PlnInECost,
  (D.prgrss * (isnull(A.ExecTotAmt,0)) / 100) + (D.prgrss * (isnull(B.ExecTotAmt,0)) / 100) AS ByDftAmt,
  D.prgrss * (isnull(A.ExecTotAmt,0)) / 100 AS ByDftInAmt,
  D.prgrss * (isnull(B.ExecTotAmt,0)) / 100 AS ByDftExAmt,
  (A.ExecTotAmt - (D.prgrss * (isnull(A.ExecTotAmt,0)))) + (B.ExecTotAmt - (D.prgrss * (isnull(B.ExecTotAmt,0)))) AS UnByDftAmt,
  A.ExecTotAmt - (D.prgrss * (isnull(A.ExecTotAmt,0))) AS UnByDftInAmt,
  B.ExecTotAmt - (D.prgrss * (isnull(B.ExecTotAmt,0))) AS UnByDftExAmt,
  C.LoadDT AS LoadDT


FROM tst70dd C
  join tst09m E on C.prjno = E.prjno
  join TPT04DC D on D.prjno = C.prjno


  join (select prjno,SUM(ISNULL(ExecTotAmt,0))
  AS exectotamt from tst70dd where Gugn = '01' and ItemGubn = '01' group by PrjNo) A on C.PRJNO = A.PRJNO 
  
  join (select PRJNO,SUM(ISNULL(ExecTotAmt,0))
  AS exectotamt from tst70dd where Gugn = '01' and ItemGubn = '02' group by PrjNo) B on C.PRJNO = B.PRJNO

 
WHERE
  E.PjtMgrYN = 'Y'
 
 GROUP BY C.prjno, C.LoadDt, A.exectotamt, B.exectotamt, D.prgrss

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 2981
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 1928
10007 sql asp 연동 질문이요!! [1] 기마긴 2017.10.13 6632
10006 통계쿼리 문의드립니다. [2] 강종원 2017.10.13 5319
» 초보 쿼리 문의.. [3] 콩만듀 2017.10.12 5018
10004 primarmy key 관련 질문입니다. [1] LJstyleS 2017.10.11 4462
10003 아래질문 답변에 관한 건데요 ㅠㅠ [1] LJstyleS 2017.10.10 4021
10002 sp에서 case when 을 사용하려고 하는데요 [1] LJstyleS 2017.10.10 3923
10001 연결된 서버로의 데이터 복사(select into)질문입니다. 양털목도리 2017.09.29 3243
10000 [복구] Transaction Log Backup 에 대한 복구 [6] DBABong 2017.09.28 5253
9999 테이블에 항목별로 날짜를 추가하고 싶습니다. [2] 박정현팬 2017.09.27 3571
9998 사용중인 테이블을 새로 만들면 용량이 줄어들까요? [2] 카루카루 2017.09.26 3586
9997 FAIL OVER CLUSTER 구성시 MSDB와 LOGIN ACCOUNT 동기화 문의 드려요 lobb 2017.09.25 2799
9996 데이터베이스 별로 CPU 사용량을 제한할 수 있을까요..?? [2] 리얼아도 2017.09.22 5184
9995 update 트리거에 대한 질문 입니다. [1] icham 2017.09.21 3682
9994 mdf, ldf 복사 관련 문의 입니다. [4] 호짱 2017.09.20 6416
9993 alwayson Availability Group의 DISK 구성 문의 합니다. [3] lobb 2017.09.20 3710
9992 ssms 언어변경질문 [1] MSG 2017.09.20 6088
9991 소스정렬 기능문의 아이와이 2017.09.20 4004
9990 ms-sql2000에서 문자열 대체 안될 때 대처방법 문의드립니다. 레니 2017.09.20 4736
9989 테이블 변수를 커서에 사용하면 안되나요? [3] 당근28호 2017.09.20 4636
9988 함수사용시 메모리에 올려놓고 쓸수 없나요? 인풋같으면 아웃풋이 같게 나오도록,,, [2] 하태민 2017.09.19 6132





XE Login