Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Chcete-li propojit podmínky s podmínkami propojenými ANDs OR podmínkami a dát jim přednost, musíte podmínku opakovat pro každou OR podmínkuAND.
Představte si například, že chcete najít všechny zaměstnance, kteří byli ve společnosti déle než pět let a mají pracovní místa nižší úrovně nebo jsou vyřazeni. Tento dotaz vyžaduje tři podmínky, jednu podmínku propojenou se dvěma dalšími podmínkami:AND
Zaměstnanci s datem přijetí starším než před pěti lety a
Zaměstnanci s pracovní úrovní 100 nebo ti, kteří mají stav "R" (pro důchod).
Následující postup ukazuje, jak vytvořit tento typ dotazu v podokně Kritéria.
Kombinování podmínek, pokud má prioritu NEBO
V podokně kritérií (Nástroje vizuální databáze) přidejte datové sloupce, které chcete prohledat. Pokud chcete prohledat stejný sloupec pomocí dvou nebo více podmínek propojených s
AND, je nutné přidat název datového sloupce do mřížky jednou pro každou hodnotu, kterou chcete prohledat.Vytvořte podmínky, se
ORkterými se má propojit, zadáním prvního do sloupce mřížky filtru a druhého (a následného) do samostatných sloupců Nebo... Chcete-li například propojit podmínky s vyhledávánímORjob_lvlastatussloupci, zadejte= 100do sloupce Filtr ajob_lvl= 'R'do sloupce Or... prostatus.Zadáním těchto hodnot do mřížky se v příkazu v podokně SQL vytvoří následující
WHEREklauzule:WHERE (job_lvl = 100) OR (status = 'R')Vytvořte podmínku
ANDtak, že ji zadáte jednou pro každouORpodmínku. Každou položku umístěte do stejného sloupce mřížky jako podmínkuOR, která odpovídá. Pokud chcete například přidat podmínkuAND, která hledáhire_datesloupec a vztahuje se na oběORpodmínky, zadejte< '1/1/91'sloupec Kritéria i sloupec Or... .Zadáním těchto hodnot do mřížky se v příkazu v podokně SQL vytvoří následující
WHEREklauzule:WHERE (job_lvl = 100) AND (hire_date < '01/01/91') OR (status = 'R') AND (hire_date < '01/01/91')Spropitné
Podmínku
ANDmůžete opakovat tak, že ji přidáte jednou a potom ji pomocí příkazů Vyjmout a Vložit z nabídky Upravit zopakujete pro dalšíORpodmínky.
Klauzule WHERE vytvořená návrhářem dotazu a zobrazení je ekvivalentní následující WHERE klauzuli, která používá závorky k určení priority OR před AND:
WHERE (job_lvl = 100 OR status = 'R') AND
(hire_date < '01/01/91')
Poznámka
Pokud zadáte podmínky hledání ve formátu zobrazeném bezprostředně nahoře v podokně SQL (Visual Database Tools), ale v podokně Diagram nebo Kritéria provedete změnu dotazu v podokně Diagram nebo Kritéria, znovu vytvoří příkaz SQL tak, aby odpovídal formuláři s podmínkou explicitně distribuovanou AND do obou OR podmínek.