Q&A

  • adoQuery에서 group by 가 이상해요....
제가 AdoQuery 컴퍼넌트를 이용하고 있는데
문제는 여기에 테이블 4개정도를 조인하고 Group By가 들어가는 문장을
Sql에 입력했습니다.
그런데 Active를 True로 하면 ora-00979 : Group By 가 잘못됐다고 나오는데
왜 그런지....
그런데 Group By를
select bbb.a, bbb.b
  from (select a, sum(b) b from kkkk group by a) bbb
라고 하면 잘 나옵니다.
왜 그런지...?
4  COMMENTS
  • Profile
    정정봉 2004.11.11 00:01
    4개의 Table의 조인된 코드를 올려주시면 수정해 드리도록 하겠습니다.

  • Profile
    이정택 2004.11.11 18:12

    올리겠습니다.
       SELECT SER.CD_BRAND        CD_BRAND,
              SER.BR_NAME         BR_NAME,
              SER.DT_IPGO         DT_IPGO,
              SER.CD_MAKER        CD_MAKER,
              SER.MA_SNAME        MA_SNAME,
              SER.TP_IPGO         TP_IPGO,
              SER.IG_NAME         IG_NAME,
              SER.TP_IPGO_GU      TP_IPGO_GU,
              SER.IS_NAME         IS_NAME,
              SER.NO_IPGO         NO_IPGO,
              SER.CD_BOKJONG      CD_BOKJONG,
              SER.CD_SEASON       CD_SEASON,
              SER.CD_ITEM         CD_ITEM,
              SER.NO_STYLE        NO_STYLE,
              SER.NO_STYLE_SEQ    NO_STYLE_SEQ,
              SER.CH_NAME              CH_NAME,
              SER.CD_COLOR        CD_COLOR,
                   SER.CR_NAME         CR_NAME,
              SER.CD_SIZE         CD_SIZE,
              SER.SZ_NAME         SZ_NAME,
              SER.PCS_AMOUNT      PCS_AMOUNT,
              SER.PCS_GAGONG      PCS_GAGONG,
              SUM(SER.CNT_IPGO)   CNT_IPGO,          
              SUM(SER.AMT_AMOUNT) AMT_AMOUNT,        
              SUM(SER.AMT_GAGONG) AMT_GAGONG,        
              MAX(SER.CD_CHANGGO) CD_CHANGGO,        
              MAX(SER.CD_CHECK)   CD_CHECK,          
              MAX(SER.ID_CHECKER) ID_CHECKER,        
              MAX(SER.DT_CHECK)   DT_CHECK,          
              MAX(SER.IP_CHECK)   IP_CHECK,          
              MAX(SER.ID_USER)    ID_USER,          
              MAX(SER.DT_INPUT)   DT_INPUT,          
              MAX(SER.IP_ADDR)    IP_ADDR            
         FROM (SELECT IMST.CD_BRAND        CD_BRAND,          
                      BRCM.CD_NAME         BR_NAME,          
                      IMST.DT_IPGO         DT_IPGO,          
                      IMST.CD_MAKER        CD_MAKER,          
                      MGUR.DSC_SNAME       MA_SNAME,          
                      IMST.TP_IPGO         TP_IPGO,          
                      IGCM.CD_NAME         IG_NAME,          
                      IMST.TP_IPGO_GU      TP_IPGO_GU,        
                      ISCM.CD_NAME         IS_NAME,          
                      IMST.NO_IPGO         NO_IPGO,          
                      SMST.CD_BOKJONG      CD_BOKJONG,        
                      SMST.CD_SEASON       CD_SEASON,        
                      SMST.CD_ITEM         CD_ITEM,          
                      IMST.NO_STYLE        NO_STYLE,          
                      IMST.NO_STYLE_SEQ    NO_STYLE_SEQ,      
                      CHCM.CD_NAME         CH_NAME,                  
                      IMST.CD_COLOR        CD_COLOR,          
                      CRCM.CD_NAME         CR_NAME,          
                      IMST.CD_SIZE         CD_SIZE,          
                      SZCM.CD_NAME         SZ_NAME,          
                      IMST.PCS_AMOUNT      PCS_AMOUNT,        
                      IMST.PCS_GAGONG      PCS_GAGONG,        
                      IMST.CNT_IPGO        CNT_IPGO,          
                      IMST.AMT_AMOUNT      AMT_AMOUNT,        
                      IMST.AMT_GAGONG      AMT_GAGONG,        
                      IMST.CD_CHANGGO      CD_CHANGGO,        
                      IMST.CD_CHECK        CD_CHECK,          
                      IMST.ID_CHECKER      ID_CHECKER,        
                      IMST.DT_CHECK        DT_CHECK,          
                      IMST.IP_CHECK        IP_CHECK,          
                      IMST.ID_USER         ID_USER,          
                      IMST.DT_INPUT        DT_INPUT,          
                      IMST.IP_ADDR         IP_ADDR            
                 FROM IPGOMST  IMST,                          
                      CODEMST  BRCM,                          
                      GURAEMST MGUR,                          
                      CODEMST  IGCM,                          
                      CODEMST  ISCM,                          
                      CODEMST  CHCM,                          
                      STYLEMST SMST,                          
                      CODEMST  CRCM,                          
                      CODEMST  SZCM                          
                WHERE IMST.CD_BRAND     = :S_BRAND
                  AND IMST.DT_IPGO      BETWEEN :S_DATE   AND :E_DATE
                  AND IMST.CD_MAKER     BETWEEN :S_MAKER  AND :E_MAKER
                  AND BRCM.CD_GU        = 'BR'              
                  AND IMST.CD_MAKER     = MGUR.CD_CODE        
                  AND MGUR.CD_GU        = '02'              
                  AND IMST.TP_IPGO      = IGCM.CD_CODE        
                  AND IGCM.CD_GU        = 'IG'              
                  AND IMST.TP_IPGO_GU   = ISCM.CD_CODE        
                  AND ISCM.CD_GU        = 'IS'              
                  AND IMST.NO_STYLE_SEQ = CHCM.CD_CODE        
                  AND CHCM.CD_GU        = 'CH'              
                  AND IMST.NO_STYLE     = SMST.NO_STYLE      
                  AND IMST.NO_STYLE_SEQ = SMST.NO_STYLE_SEQ  
                  AND IMST.CD_COLOR     = CRCM.CD_CODE        
                  AND CRCM.CD_GU        = 'CR'              
                  AND IMST.CD_SIZE      = SZCM.CD_CODE        
                  AND SZCM.CD_GU        = 'SZ') SER
    GROUP BY SER.CD_BRAND,              
              SER.BR_NAME,                
              SER.DT_IPGO,                
              SER.CD_MAKER,              
              SER.MA_SNAME,              
              SER.TP_IPGO,                
              SER.IG_NAME,                
              SER.TP_IPGO_GU,            
              SER.IS_NAME,                
              SER.NO_IPGO,                
              SER.CD_BOKJONG,            
              SER.CD_SEASON,              
              SER.CD_ITEM,                
              SER.NO_STYLE,              
              SER.NO_STYLE_SEQ,          
              SER.CH_NAME,                
              SER.CD_COLOR,              
              SER.CR_NAME,                
              SER.CD_SIZE,                
              SER.SZ_NAME,                
              SER.PCS_AMOUNT,            
              SER.PCS_GAGONG            

  • Profile
    정정봉 2004.11.12 03:44
    하루종일 일하다 보니 늦어네요...지송합니다..
    사용하시는 DB가 무엇인지요?
    많이도 Group by 하셨네요.

    문제로 생각되는 부분은 CODEMST  BRCM Table과 조인되는 Table 없어서
    그런것 같군요


    대충 내용으로 봐서는 코드 조인후에 코드에 대한 네임을 가져 와서
    Group by하는것 같은데요.
    코드에 대한 Name을 가져 오는 거라면 IPGOMST table에 대한 그룹핑한 다음에 조인해도 됩니다.

  • Profile
    이정택 2004.11.13 08:14

    님께서 답변 주신 내용을 실행해 보니 역시 같은 문제가 발생을 하네요...
    왜 그런지 답답하네요. 다른 사람들은 잘 사용된다고 하는데
    제가 뭘 잘못 깔았나...?
    • 이추형
      2004.11.11 22:22
      저의 경우에는 OS를 Windows 2003 사용하고 있는데요 간혹 시스템 관련 코딩시 컴파일까지는 잘 되고 실행...
    • 김정현
      2004.11.12 00:00
      왜 충돌이 아니라고 생각하냐면요... 기본 윈도2000프로페셔널에 서비스팩4 구요... 설치 프로그램은 ...
    • 이두형
    • 2004.11.11 20:59
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2004.11.11 21:17
      네 동적으로 컴포넌트를 생성하고 삭제하실 수 있습니다. 간단한 예문을 올릴께요 보시고 참고 하세요 ...
    • 모영철
      2004.11.11 21:13
      ^^ 당근 있죠... 오래전에 본거라 잘기억은 안나는데.. 찾아보시면 있을겁니다. 마우스를 클릭한 ...
    • 하얀까마귀
      2004.11.12 02:43
      안녕하세요 하얀까마귀입니다. printers를 이용한다면 그 내용자체가 이미지인데요.. DC에다가 그냥 프...
    • 박원용
    • 2004.11.11 18:18
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 모영철
      2004.11.11 19:01
      두개의 쿼리로 나누고 두개의 updatesql을 쓰시던지 아니면 한개의 테이블만 입력을 하고 나머지...
    • 박원용
      2004.11.11 20:19
      또 답변 주셨군요... 그런데 제가 초보라 이해를 잘못하고 있습니다.. 죄송하지만 좀더 상세하게 답변좀 ...
    • 모영철
      2004.11.11 20:48
      제가 생각해보기엔.. 폼위에 하나의 디비 그리드 하나의 쿼리 하나의 업데이트에스큐엘이 있다면 지...
    • 박원용
      2004.11.11 20:56
      답변 정말 감사합니다.. 이젠 잘됩니다.. ^^; 한델에는 정말 훌륭한 분들이 많이 계신것 같네요... 그...
    • 문의득
    • 2004.11.11 17:53
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 앤디
    • 2004.11.11 12:08
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 하얀까마귀
      2004.11.12 02:51
      안녕하세요 하얀까마귀 입니다. 음성은 acm으로 시작되는 많은 api들이 있습니다. 이걸로 하시면 원하...
    • 가딘
    • 2004.11.11 08:54
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 모영철
      2004.11.11 19:07
      퀵리포트의 컨트롤을 찾지 마시고.. 연결된 Query에서 값을 가지고 오시면 되지 않을까요.. 아니면 ...
    • 가딘
      2004.11.11 19:52
      excel 로 변환해야 할게 많아서 일일이  코딩하기는 뭐하고 해서 함수를 만들어서 미리보기 창...
    • 모영철
      2004.11.11 20:57
      무엇이 문제인지 제가 잘 이해가 안되네요.. 추측을 해보면 미리보기 창을 직접 만드셨고..거기에 엑셀...
    • 정경주
    • 2004.11.11 01:40
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이정택
    • 2004.11.10 23:24
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 정정봉
      2004.11.11 00:01
      4개의 Table의 조인된 코드를 올려주시면 수정해 드리도록 하겠습니다.
    • 이정택
      2004.11.11 18:12
      올리겠습니다.    SELECT SER.CD_BRAND        CD_...
    • 정정봉
      2004.11.12 03:44
      하루종일 일하다 보니 늦어네요...지송합니다.. 사용하시는 DB가 무엇인지요? 많이도 Group by 하셨네요....
    • 이정택
      2004.11.13 08:14
      님께서 답변 주신 내용을 실행해 보니 역시 같은 문제가 발생을 하네요... 왜 그런지 답답하네요. 다른 ...
    • 델파인
    • 2004.11.10 22:09
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 하얀까마귀
      2004.11.17 11:17
      안녕하세요 하얀까마귀 입니다. upx는 잘모르겟구요.. 아마두 원리는 뻔하겟
    • 남양원
      2004.11.11 17:57
      장점 : 실행파일이 압축되므로 배포할 파일의 사이즈를 줄여 줍니다. 업데이트 파일들을 압축하면, ...
    • 이동우
    • 2004.11.10 20:08
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 정정봉
      2004.11.10 23:48
      보통 Query나 Table의 필드(정수형,실수형)의 object inspect에서 displayformat에 ###,###으로 지정하면 D...
    • 이동우
      2004.11.11 17:35
      위의 답변내용은 약간 부족한것 같습니다... displayformat  은 dbgrid에서 지원 하지 않는것...
    • 정정봉
      2004.11.12 03:51
      DBGrid는 지원하지 않는것 맞습니다. DBGrid에 연결되는 Query콤포나 Table콤포을 설정하시라구 한건데...
    • 조병호
      2005.05.25 04:53
      TNumericField이나 여기서 상속받은놈은 DisplayFormat와 EditFormat 속성을 가지고 있는데 DisplayFormat...
    • 최지혜
    • 2004.11.10 00:54
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 하얀까마귀
      2004.11.12 02:23
      안녕하세요 하얀까마귀 입니다. 오랜만에 답변 하나 올리네요.. nhic면 국민건강보험 관리공단인가??...
    • nilriri™
      2004.11.10 08:06
      얼마전에 답변 작성하면서..테스트 해봤었는데.. 저만 그러는줄 알았는데..ㅡㅡ; xp sp2 설치하고 ...
    • 정찬희
      2004.11.10 04:48
      procedure OpenIE(const aURL: string); var   IE: Variant; begin   IE := Creat...
    • 가리
      2004.11.10 00:35
      그냥 URL로 열때에는 아래의 ShellExecute함수를 사용하여 사용해 보십시요. uses 에  'shell...
    • 송종효
    • 2004.11.09 22:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 정정봉
      2004.11.09 23:24
      QuickRep BeforePrint이벤트에서 Qrshape width를 조절하면 될것 같은데요.