ALL, DISTINCT, DISTINCTROW, viršuje taisyklių sąlygos

ALL, DISTINCT, DISTINCTROW, viršuje taisyklių sąlygos

Pastaba: Norėtume jums kuo greičiau pateikti naujausią žinyno turinį jūsų kalba. Šis puslapis išverstas automatiškai, todėl gali būti gramatikos klaidų ar netikslumų. Mūsų tikslas – padaryti, kad šis turinys būtų jums naudingas. Gal galite šio puslapio apačioje mums pranešti, ar informacija buvo naudinga? Čia yra straipsnis anglų kalba, kuriuo galite pasinaudoti kaip patogia nuoroda.

Nurodo įrašus su SQL užklausomis.

Sintaksė

PASIRINKITE [VISUS | SKIRTINGŲ | DISTINCTROW | [Viršaus n [procentų]]]
lentelės

Sakinys SELECT su šias sąlygas yra sudarytas iš šių dalių:

Dalis

Aprašas

ALL

Laikoma, kad jei negali būti neįtraukiate vienos iš. "Microsoft Access" duomenų bazės modulis pažymi visus įrašus, kurie atitinka SQL sakinį. Šie du pavyzdžiai yra lygiavertės ir grąžintų visus įrašus iš lentelės darbuotojai:

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

DISTINCT

Praleidžiamas įrašus, kuriuose yra besidubliuojančių duomenų laukus. Turi būti įtraukti į užklausos rezultatus, kiekvieno lauko pateikta sakinyje SELECT reikšmės turi būti unikali. Pvz., kelių darbuotojų sąraše, kuris lentelėje gali būti tokia pat pavarde. Jei du įrašus, kuriuose yra nagas į lauką pavardė, šį SQL sakinį grąžina tik vieną įrašą, kuriame yra Mikalauskas:

SELECT DISTINCT LastName
FROM Employees;

Jei praleisite DISTINCT, ši užklausa pateikia abu Mikalauskas įrašus.

Jei sąlygos Select yra daugiau nei vienas laukas, derinio visų laukų reikšmės turi būti unikali nurodyto įrašo turi būti įtraukti į rezultatus.

Užklausą, kuri naudoja skirtingus išvestis nėra naujinama ir nematyti kito vartotojo atliktus pakeitimus.

DISTINCTROW

Praleidžiamas duomenų, pagal visą pasikartojančius įrašus, ne tik pasikartojančiais laukais. Pavyzdžiui, galite sukurti užklausos, jungiančios lauką CustomerID lenteles Klientai ir užsakymai. Lentelėje Klientai nėra besidubliuojančių CustomerID laukų, tačiau užsakymai veikia, nes kiekvienas klientas gali turėti daug užsakymų. Šį SQL sakinį rodo, kaip galite naudoti DISTINCTROW sąrašą įmonių, turinčių bent vieną užsakymą, bet be jokių informacijos apie:

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

Jei nenurodysite DISTINCTROW, ši užklausa apskaičiuojami kelias eilutes kiekvienai įmonei, kurioje yra daugiau nei vieną užsakymą.

DISTINCTROW turi įtakos tik tada, kai pasirenkate laukus iš kelių, bet ne visų, iš lentelių, naudojamų užklausoje. DISTINCTROW nepaisoma, jei jūsų užklausoje yra tik viena lentelė, arba jei visų lentelių laukai.

VIRŠUTINĖS n [procentų]

Grąžina tam tikrą skaičių įrašus, kurie yra viršuje arba apačioje sąlygos ORDER BY nurodyto diapazono. Tarkime, kad norite į viršų 25 mokinių 1994 pavadinimus:

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

Jei nėra rūšiuoti pagal sąlygą, užklausa grąžins yra savavališkai 25 įrašų rinkinį, sąlygą WHERE lentelę studentai.

VIRŠUTINĖS tarinys negali pasirinkti tarp vienodų reikšmių. Ankstesniame pavyzdyje, jeigu dvidešimt penktas ir dvidešimt šeštos aukščiausio lygio taško vidurkius, yra vienodi, užklausa grąžins 26 įrašus.

Taip pat galite pateikti tam tikrą įrašus, kurie yra viršuje arba apačioje sąlygos ORDER BY nurodyto diapazono procento rezervuotasis žodis. Tarkime, kad, o viršuje 25 studentai, norimą apačios 10 procentų klasės:

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

Sąlyga ASC nurodo pateikiama apatinės reikšmės. Kad reikšmė turi būti nepasirašytas sveikasis skaičius.

VIRŠUJE neturi įtakos ar ne užklausą galima naujinti.

lentelė

Lentelės, iš kurios nuskaitomi įrašai, pavadinimas.



Tobulinkite savo „Office“ įgūdžius
Ieškoti mokymo
Pirmiausia gaukite naujų funkcijų
Prisijunkite prie „Office Insider“ dalyvių

Ar ši informacija buvo naudinga?

Dėkojame už jūsų atsiliepimus!

Dėkojame už jūsų atsiliepimą! Panašu, kad gali būti naudinga jus sujungti su vienu iš mūsų „Office“ palaikymo agentų.

×