2010-05-21 2 views
1

Id 필드가 두 번 이상 존재하는 모든 레코드를 얻으려고 시도 할 때 내 쿼리가 아무 것도 반환하지 않고 왜 그럴 이유가 없는지 !? 그리고 이것이 제가 아는 유일한 방법입니다.T-SQL 쿼리 결과가 중복 제거로 예상되지 않음

일부 자세한 내용 :

  • 각 세트의 processOrder에 의해 그룹화
  • 같은 주문 번호 8까지있다가, 내가하지만 속는
  • 나머지에 대해이 가장 낮은 값이 필요 데이터가 다를 수도 있고 동일 할 수도 있습니다.

    1. 고객 번호

    2.Corp 고객 번호

    3.Order 수

여기 :

  • 이 데이터는 세 개의 ID는 모든 속는이되어 있습니다, 포함하고있다 내 코드 :

     select 
    [Customer Number], 
    [Corporate Customer Number], 
    [Order Date], 
    [Order Number], 
    [Order No], 
    [Order Line Status], 
    [Payment Method] , 
    [ProcessOrder], 
    [Order Platform] 
    
    from Temp_ICOSOrder 
    
        group by 
    [Customer Number], 
    [Corporate Customer Number], 
    [Order Date], 
    [Order Number], 
    [Order No], 
    [Order Line Status], 
    [Payment Method] , 
    [ProcessOrder] , 
    [Order Platform] 
    
        having COUNT([Order Number]) > 1 
    

    도움이 많이 필요합니다!

  • 답변

    1

    그룹 by 절에서 [Order Number]을 제거하십시오.

    그룹화하면 개수는 항상 1입니다!

    +0

    +1 잘 잡힌, 감사합니다! 곧 받아 들일 것입니다 :) – Yoda