Condividi tramite


Combinare le condizioni quando AND ha la precedenza (Visual Database Tools)

si applica a:SQL Server

Per combinare condizioni con AND, aggiungere la colonna alla query due volte una volta per ogni condizione. Per combinare le condizioni con OR, inserire la prima nella colonna Filtro e le condizioni aggiuntive in una colonna Or... .

Si supponga, ad esempio, di voler trovare i dipendenti che sono stati con l'azienda per più di cinque anni in posti di lavoro di livello inferiore o dipendenti con posti di lavoro di livello intermedio indipendentemente dalla data di assunzione. Per questa query sono necessarie tre condizioni, due collegate con AND:

  • I dipendenti con una data di assunzione precedente a cinque anni fa AND con un livello di lavoro pari a 100.

    -o-

  • Dipendenti con un livello professionale pari a 200.

Combinare le condizioni quando AND ha la precedenza

  1. Nel riquadro Criteri aggiungere le colonne di dati da cercare. Se si desidera eseguire una ricerca nella stessa colonna usando due o più condizioni collegate a AND, è necessario aggiungere il nome della colonna di dati alla griglia una volta per ogni valore da cercare.

  2. Nella colonna Filtro immettere tutte le condizioni da collegare con AND. Ad esempio, per collegare le condizioni con AND tale ricerca nelle hire_date colonne e job_lvl , immettere rispettivamente i valori < '1/1/91' e = 100, nella colonna Filtro.

    Queste voci della griglia producono la clausola seguente WHERE nell'istruzione nel riquadro SQL:

    WHERE (hire_date < '01/01/91') AND
      (job_lvl = 100)
    
  3. Nella colonna della griglia Or... immettere le condizioni che si desidera collegare con OR. Ad esempio, per aggiungere una condizione che cerca un altro valore nella colonna job_lvl, immettere un valore aggiuntivo nella Or... colonna, ad esempio = 200.

    L'aggiunta di un valore nella colonna Or... aggiunge un'altra condizione alla WHERE clausola nell'istruzione nel riquadro SQL:

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