Predikati ALL, DISTINCT, DISTINCTROW, TOP

Predikati ALL, DISTINCT, DISTINCTROW, TOP

Važno :  Ovaj je članak strojno preveden. Pogledajteizjavu o odricanju od odgovornosti. Verziju ovog članka na engleskom potražite ovdje.

Određuje zapise odabrane SQL upita.

Sintaksa

ODABERITE [SVE | DISTINCT | DISTINCTROW | [NAJVEĆIH n [POSTOTAK]]]
Iz tablice

Naredba SELECT koja sadrži ove predikati sastoji se od sljedećih dijelova:

Dio

Opis

ALL

Da ako ne uključite neki od predikata. Modul za baze podataka programa Microsoft Access odabire sve zapise koji zadovoljavaju uvjete u SQL naredbu. Sljedeća dva primjera ekvivalentni su i vraćaju sve zapise iz tablice Zaposlenici:

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

DISTINCT

Izostavlja zapise koji sadrže duplicirane podatke u odabranim poljima. Da bi bio uvršten u rezultate upita vrijednosti za svako polje naveden u naredbi SELECT mora biti jedinstvena. Na primjer, nekoliko zaposlenika koji se nalaze u tablici Zaposlenici možda jednakog prezimena. Ako dva zapisa sadrže Novak u polju Prezime, sljedeća SQL naredba vraća samo jedan zapis koji sadrži Novak:

SELECT DISTINCT LastName
FROM Employees;

Ako izostavite DISTINCT, ovaj upit vraća oba zapisa Novak.

Ako se uvjet SELECT sadrži više od jednog polja, kombinacija vrijednosti iz svih polja mora biti jedinstvena za dani zapis da bi bio uvršten u rezultate.

Rezultat upita koji koristi DISTINCT nije moguće ažurirati i ne odražava kasnije promjene koje su unijeli drugi korisnici.

DISTINCTROW

Izostavlja podataka na temelju cijele duplicirane zapise, ne samo dupliciranih polja. Na primjer, mogli biste stvoriti od upita koji spaja tablice Kupci i narudžbe u polju IDKupca. Tablica Kupci ne sadrži duplicirane IdKlijenta polja, ali ne tablicu Narudžbe jer svaki klijent može imati više narudžbi. Sljedeće SQL naredbe prikazuje kako možete koristiti DISTINCTROW za stvaranje popisa tvrtki koje imaju barem jednu narudžbu, ali bez pojedinosti o ovim narudžbama:

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

Ako izostavite DISTINCTROW, ovaj upit proizvodi više redaka za svaku tvrtku koja ima više od jedne redoslijed.

DISTINCTROW djeluje samo prilikom odabira polja iz nekih, ali ne svi, od tablica koje se koriste u upitu. Ako upit sadrži samo jednu tablicu ili pak izlazna polja iz svih tablica, DISTINCTROW se zanemaruje.

VRH n [POSTOTAK]

Vraća određeni broj zapisa koje se nalaze na vrhu ili dnu raspona koji je naveden tako da uvjet ORDER BY. Pretpostavimo da želite imena najboljih 25 studenata generacije 1994:

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

Ako ne uključite uvjet ORDER BY, upit će vratiti proizvoljan skup 25 zapisa iz tablice studenti koji zadovoljavaju uvjet WHERE.

GORNJI predikata odabrati između jednake vrijednosti. U prethodnom primjeru, ako se od dvadeset peti te dvadeset i šesti najbolji prosjek ocjena jednaki, upit će vratiti 26 zapisa.

POSTOTNI rezervirane riječi možete koristiti i da biste se vratili na zapise koji se nalaziti na vrhu ili dnu raspona koji je naveden tako da uvjet ORDER BY postotak. Pretpostavimo da umjesto najboljih 25 studenata želite donjih 10 posto klase:

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

ASC predikata određuje vraćanje najniže vrijednosti. Vrijednost koja dolazi nakon TOP mora biti cijeli broj bez predznaka.

VRH ne utječe na hoće li se upit može ažurirati.

tablica

Naziv tablice iz koje se zapisi učitavaju.



Napomena : Izjava o odricanju od odgovornosti za strojni prijevod: ovaj je članak preveo računalni sustav bez ljudske intervencije. Microsoft nudi strojne prijevode da bi korisnicima koji ne razumiju engleski omogućio čitanje sadržaja o Microsoftovim proizvodima, uslugama i tehnologijama. Budući da je preveden strojno, članak možda sadrži pogreške u vokabularu, sintaksi ili gramatici.

Proširite svoje vještine
Istražite osposobljavanje

Jesu li vam ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×