共用方式為


如何:在 OR 具有優先權時組合條件

若要使用 OR 來連結條件,並使其優先權超越使用 AND 連結的條件,則必須在每個 OR 條件中重複 AND 條件。

例如,假設您想要尋找年資五年以上的低層或已退休員工。 這一查詢需要三個條件,其中一個條件會以 AND 與其他兩個條件連結:

  • 年資五年以上的員工,以及

  • 工作層級為 100 或工作狀態為 "R" (已退休) 的員工。

下列程序說明如何在 [準則] 窗格中建立這類查詢。

注意事項注意事項

在下列指示的某些 Visual Studio 使用者介面項目中,您的電腦可能會顯示不同的名稱或位置:您所擁有的 Visual Studio 版本以及使用的設定會決定這些項目。如需詳細資訊,請參閱 Visual Studio 設定

若要在 OR 具有優先權時組合條件

  1. 在 [準則] 窗格中,加入想要搜尋的資料行。 若要使用由 AND 所連結的兩個或多個條件來搜尋相同的資料行,就必須針對想要搜尋的每個值,將資料行名稱加入方格中。

  2. 在 [篩選條件] 方格資料行中輸入第一個條件,在另一個 [] 資料行中輸入第二個 (及後續其他的) 條件,即可建立使用由 OR 所連結的條件。 例如,若要使用 OR 連結搜尋 job_lvl 和 status 資料行的條件,請在 job_lvl 的 [篩選條件] 資料行輸入 = 100,在 status 的 [] 資料行輸入 = 'R'。

    輸入上述方格中的值,會在 [SQL] 窗格的陳述式中產生下列 WHERE 子句:

    WHERE (job_lvl = 100) OR (status = 'R')
    
  3. 將 AND 條件輸入每個 OR 條件,即可建立 AND 條件。 將每個項目放入相同的方格資料行中,做為它所對應的 OR 條件。 例如,若要加入搜尋 hire_date 資料行並套用至這兩個 OR 條件的 AND 條件,請在 [準則] 資料行和 [] 資料行中輸入 < '1/1/91'。

    輸入上述方格中的值,會在 [SQL] 窗格的陳述式中產生下列 WHERE 子句:

    WHERE (job_lvl = 100) AND 
      (hire_date < '01/01/91' ) OR
      (status = 'R') AND 
      (hire_date < '01/01/91' )
    

    提示

    您可以藉由加入 AND 條件,然後使用 [編輯] 功能表的 [剪下] 和 [貼上] 命令來重複此條件,即可在其他 OR 條件中重複此條件。

[查詢和檢視表設計工具] 所建立的 WHERE 子句相當於下列 WHERE 子句,其中使用括號來指定 OR 的優先權高於 AND:

WHERE (job_lvl = 100 OR status = 'R') AND
   (hire_date < '01/01/91')
注意事項注意事項

如果以 SQL 窗格上方所示的格式來輸入搜尋條件,之後卻在 [圖表] 或 [準則] 窗格中變更查詢,則 [查詢和檢視表設計工具] 會重新建立 SQL 陳述式,以符合明確分配至兩個 OR 條件之 AND 條件的形式。

請參閱

參考

比較運算子 (Visual Database Tools)

概念

在準則窗格中組合搜尋條件的慣例

其他資源

指定搜尋準則