2013-06-21 2 views
1

확인 일정 수 이하의 필드의 최대 만 항목을 선택 그래서 ... 나는이 질문이 :이 가장 높은 상태 코드는 두 테이블에서 모든 것을 선택라고 생각액세스 쿼리

SELECT * from Orders o 
INNER JOIN OrderStatus os 
ON o.Serial = os.Serial 
WHERE ( 
Select Max(StatusCode) FROM OrderStatus Where Serial = o.Serial 
) < 14; 

을 이하

(14) 그러나 그것은 단지 모든

나는 또한이 시도 (모든 순서가 14 이하로 그와 연관된 적어도 한 상태 코드가) 선택 :

SELECT * from Orders o 
INNER JOIN OrderStatus os 
ON o.Serial = os.Serial 
WHERE Max(os.StatusCode) < 14; 

하지만 액세스 할 때 집계 함수를 사용할 수 없으므로 방금 오류가 발생했습니다.

액세스 쿼리를 필터링하는 방법이있어 순서의 최상위 상태 코드가 지정된 수 아래에있는 행만 반환합니다.

답변

1

난 당신이 뭔가를 찾고 생각 :

SELECT * 
FROM 
    Orders o 
    INNER JOIN 
    OrderStatus os 
     ON o.Serial = os.Serial 
WHERE o.Serial IN 
    (
     SELECT Serial 
     FROM OrderStatus 
     GROUP BY Serial 
     HAVING MAX(StatusCode)<14 
    ) 
+0

예, 예 내가 .. –