2010-03-02 4 views
0

원래의 질문이 명확하지 않아서 단순화하고 재 설명하려고 시도했습니다. 간단하게 만 기록 곳을 보여 3. MS 액세스 - SQL 제외 데이터 쿼리

  • 을 위해,

    1. 는 X의 (사용자가 입력)를 PhaseID 유무 : MS 액세스에서

      나는 모든 레코드를 찾을 것으로 예상되는 쿼리가 우선 순위 필드로 설정 한 후 다음

    2. 3.

    ,369의 PhaseID을 가진 모든 레코드에 대한 위를 달성하기로했다 그 존재에 현재 표시된 쿼리가 크거나 같은

    편집 : 아래 쿼리는 우선 순위 필드에 공식화됩니다. 그래서 우선 순위 1로 모든 우선 순위가 필요합니다. 그것은 본질적으로 아래에있는 것으로되어 있지만, 아무 것도하지 않습니다.

    IIf([Forms]![frm_OfferteEnOrderOpvolging]![PhaseID]=3,2,1) OR 
    IIf([Forms]![frm_OfferteEnOrderOpvolging]![PhaseID]=3,3,1) 
    
  • 답변

    0

    내가 뭔가를해야만 실종하지 않는 한이 그냥이

    WHERE (((tblFoo.Phase_ID)=3) AND ((tblFoo.Priority)>=2 And (tblFoo.Priority)<>1))  
    OR (((tblFoo.Priority)>=2 And (tblFoo.Priority)<>1)); 
    

    같은 일을하는 경우이어야한다을하지만, 첫 번째 질문은 분명하지 않으므로 재 게시 할 수 있다면이 SQL을 맞게 조정할 수 있습니다

    +0

    당신이 말하는 것은 실제로 의미가 있습니다. 그러나 MS Access에서 정확히하는 것은 여전히 ​​1의 우선 순위를 가진 모든 레코드를 제공합니다. –

    +0

    OR 문 양쪽 모두 조건 "tblFoo.Priority <> 1"을 포함 할 수 없습니다. 이 필드가 텍스트가 아닌 숫자 일 수 있습니까? 그걸로 문제가 발생할 수 있습니다 –

    +0

    현재 내가 그것을 해결 한 것, 난 문제가 어디 있는지 모르겠지만 처음부터 쿼리를 다시 작성, 단계별로 지금은 그것이 작동대로해야합니다! 도와 주셔서 감사합니다 :) –

    0

    내가 왜 당신의 포인트 얻을 확실하지 않다 :

    WHERE PhaseID>=[Forms]![frm_OfferteEnOrderOpvolging]![PhaseID] 
    
    +0

    저는 실제로 모든 우선 순위 w를 얻으려고합니다. ith PhaseID = 3 일 때와 같은 레벨을 나타내는 ith ... –