Predikáty ALL, DISTINCT, DISTINCTROW, TOP

Predikáty ALL, DISTINCT, DISTINCTROW, TOP

Důležité :  Tento článek je strojově přeložený – přečtěte si toto upozornění. Anglickou verzi tohoto článku pro referenci najdete tady.

Určuje záznamy vybrané s dotazy SQL.

Syntaxe

VYBERTE [VŠECHNY | JEDNOZNAČNÉ | DISTINCTROW | [HORNÍCH n [%]]]
z tabulky

Příkaz SELECT obsahující tyto predikáty má následující části:

Část

Popis

ALL

Předpokládá, že pokud jste nezahrnujte jednu predikáty. Databázový stroj Microsoft Access vyberete všechny záznamy, které splňují podmínky uvedené v příkazu SQL. Následující dva příklady jsou ekvivalentní a vrácení všech záznamů v tabulce Zaměstnanci:

SELECT ALL *
FROM Employees
ORDER BY EmployeeID;
SELECT *
FROM Employees
ORDER BY EmployeeID;

JEDNOZNAČNÉ

Vynechá záznamy, které obsahují duplicitními daty ve vybraných polí. Pokud chcete být zahrnut do výsledků dotazu, musí být jedinečné hodnoty pro jednotlivá pole uvedená v příkazu SELECT. Například několik zaměstnanců uvedené v tabulce Zaměstnanci pravděpodobně stejným příjmením. Pokud dva záznamy obsahují Novák v poli Příjmení, vrátí následující příkaz SQL pouze jeden z těchto záznamů:

SELECT DISTINCT LastName
FROM Employees;

Pokud vynecháte DISTINCT, tento dotaz vrátí oba záznamy Novák.

Pokud klauzule SELECT obsahuje více polí, kombinace hodnot ve všech vrácených polích musí být jedinečná dané záznam, který byl zahrnut výsledků.

Výstup dotazu, který používá DISTINCT není aktualizovatelné a neodráží změny provedené jinými uživateli.

DISTINCTROW

Ve vráceném duplicitní záznamy, nikoli pouze pole. Můžete například vytvořit dotazu, který propojuje tabulky Zákazníci a objednávky podle pole ID zákazníka. Tabulka Zákazníci obsahuje žádné duplicitní pole CustomerID, ale v tabulce Orders provede, protože jednotlivé zákazníky může mít mnoho objednávek. Následující příkaz SQL ukazuje, jak můžete pomocí DISTINCTROW seznam společností, které mají nejméně jeden pořadí, ale bez podrobností o těchto objednávky plodiny:

SELECT DISTINCTROW CompanyName
FROM Customers INNER JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
ORDER BY CompanyName;

Pokud vynecháte DISTINCTROW, tento dotaz vytvoří víc řádků pro každou společnost, která obsahuje více než jeden pořadí.

DISTINCTROW má efekt, pouze pokud vyberete pole z některých, ale ne všech z tabulek použitá v dotazu. DISTINCTROW ignoruje Pokud dotaz obsahuje jenom jednu tabulku nebo výstupní pole ze všech tabulek.

HORNÍCH n [PROCENT]

Vrátí určitý počet záznamy, které spadají v horní nebo dolní části oblasti nastavil klauzule ORDER. Předpokládejme, že chcete názvy nejlepších studentů 25 z třídy 1994:

SELECT TOP 25
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage DESC;

Pokud nezadáte klauzule ORDER BY, dotaz vrátí libovolnou sadu 25 záznamy z tabulky studentům, které vyhovují klauzuli WHERE.

Predikát TOP nerozlišuje stejné hodnoty. V předchozím příkladu Pokud po dvaceti pátý a po dvaceti šestý nejvyšší testu čárky průměrů jsou uvedena stejná, vrátí dotaz 26 záznamy.

Můžete také PROCENTUÁLNĚ rezervovaná slova se vrátíte určité procento záznamy, které spadají v horní nebo dolní části oblasti nastavil klauzule ORDER. Předpokládejme, že namísto 25 nejlepších studentů chcete dolní 10 % třídy:

SELECT TOP 10 PERCENT
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage ASC;

ASC predikát určuje vrácení nejnižší hodnoty. Hodnota, která následuje horní musí být celé číslo bez znaménka.

HORNÍ nemá vliv na zda nebo se dotaz aktualizovatelný.

tabulka

Název tabulky, ze které jsou načítány záznamy.



Poznámka : Upozornění ke strojovému překladu: Tento článek přeložil počítačový systém bez zásahu člověka. Společnost Microsoft nabízí tyto strojové překlady proto, aby umožnila uživatelům, kteří nemluví anglicky, získat informace o produktech, službách a technologiích této společnosti. Protože je tento článek strojově přeložený, může obsahovat slovní, syntaktické nebo gramatické chyby.

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×