Delen via


Voorwaarden combineren wanneer AND prioriteit heeft (Visual Database Tools)

van toepassing op:SQL Server-

Als u voorwaarden wilt combineren, ANDvoegt u de kolom twee keer toe aan de query voor elke voorwaarde. Als u voorwaarden wilt combineren met OR, plaatst u de eerste in de kolom Filter en aanvullende voorwaarden in een or... -kolom.

Stel dat u werknemers wilt vinden die langer dan vijf jaar bij het bedrijf zijn geweest in banen op lager niveau of werknemers met een baan op middelste niveau, ongeacht hun aanhuurdatum. Voor deze query zijn drie voorwaarden vereist, waarvan twee zijn gekoppeld aan AND:

  • Werknemers met een huurdatum ouder dan vijf jaar geleden AND met een baanniveau van 100.

    – of –

  • Werknemers met een functieniveau van 200.

Voorwaarden combineren wanneer AND voorrang heeft

  1. Voeg in het deelvenster Criteria de gegevenskolommen toe die u wilt doorzoeken. Als u in dezelfde kolom wilt zoeken met twee of meer voorwaarden die zijn gekoppeld AND, moet u de naam van de gegevenskolom eenmaal toevoegen aan het raster voor elke waarde die u wilt zoeken.

  2. Voer in de kolom Filter alle voorwaarden in waarmee ANDu een koppeling wilt maken. Als u bijvoorbeeld voorwaarden wilt koppelen aan AND die zoeken in de hire_date kolommenjob_lvl, voert u de waarden in en = 100typt u respectievelijk de waarden < '1/1/91' in de kolom Filter.

    Deze rastervermeldingen produceren de volgende WHERE component in de instructie in het SQL-deelvenster:

    WHERE (hire_date < '01/01/91') AND
      (job_lvl = 100)
    
  3. Voer in de rasterkolom Of... voorwaarden in waarmee ORu een koppeling wilt maken. Als u bijvoorbeeld een voorwaarde wilt toevoegen waarmee wordt gezocht naar een andere waarde in de kolom job_lvl, voert u een extra waarde in de Of... kolom, zoals = 200.

    Als u een waarde toevoegt in de kolom Or... wordt een andere voorwaarde toegevoegd aan de WHERE component in de instructie in het SQL-deelvenster:

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