Applies To„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Nurodo, kuriems sąlygoje FROM nurodytiems lentelių laukams daro įtaką SELECT, UPDATE arba DELETE sakinys.

Sintaksė

SELECT laukų_sąrašasFROM lentelės_reiškinysWHERE kriterijai

Sakinys SELECT su sąlyga WHERE yra sudarytas iš trijų dalių:

Dalis

Aprašas

laukų_sąrašas

Nuskaitomo lauko arba laukų pavadinimai su visais lauko pavadinimo pseudonimais, atrankos taisyklių sąlygos (ALL, DISTINCT, DISTINCTROW arba TOP) arba kitos sakinio SELECT parinktys.

lentelės_reiškinys

Lentelės arba lentelių, iš kurių gaunami duomenys, pavadinimas.

kriterijai

išraiška, kurią turi atitikti įrašai, kad būtų įtraukti į užklausos rezultatus.

Pastabos

„Microsoft Access“ duomenų bazės modulis pasirenka įrašus, kurie atitinka sąlygas, nurodytas sąlygoje WHERE. Jei nenurodote sąlygos WHERE, užklausa grąžina visas lentelės eilutes. Jei užklausoje nurodote daugiau nei vieną lentelę ir neįtraukėte sąlygos WHERE arba sąlygos JOIN, užklausa sukuria lentelių Dekarto sandaugą.

WHERE sąlyga yra pasirinktina, tačiau jei naudojama, turi būti po FROM. Pavyzdžiui, galite pasirinkti visus pardavimo skyriaus darbuotojus (WHERE Dept = 'Sales') arba visus klientus, kurių amžius yra nuo 18 iki 30 metų (WHERE Age Between 18 And 30).

Jei nenaudojate sąlygos JOIN atlikdami SQL kelių lentelių sujungimo operacijas, gautas objektas Recordset nebus atnaujinamas.

Sąlyga WHERE yra panaši į sąlygą HAVING. WHERE nustato pasirinktus įrašus. Taip pat, kai įrašai sugrupuojami naudojant sąlygą GROUP BY, sąlyga HAVING nustato, kurie įrašai yra rodomi:

Naudokite sąlygą WHERE, kad atmestumėte įrašus, kurių neturėtų grupuoti sąlyga GROUP BY.

Naudokite įvairius reiškinius, kad nustatytumėte, kuriuos įrašus turi grąžinti SQL sakinys. Pavyzdžiui, šis SQL sakinys pasirenka visus darbuotojus, kurių atlyginimai yra didesni nei 21,000 $:

SELECT LastName, Salary FROM Employees WHERE Salary > 21000;

Sąlyga WHERE gali turėti iki 40 reiškinių, susietų loginiais operatoriais, pvz., And ir Or.

Įvesdami lauko pavadinimą, kuriame yra tarpas arba skyrybos ženklų, pavadinimą rašykite laužtiniuose skliaustuose ([ ]). Pavyzdžiui, informacijos apie klientus lentelėje gali būti informacijos apie konkrečius klientus:

SELECT [Customer’s Favorite Restarant]

Kai nurodote kriterijų argumentą, datos literalai turi būti JAV formatu, net jei nenaudojate Microsoft Access duomenų bazės modulio JAV versijos. Pavyzdžiui, 1996 m. gegužės 10 d. parašyta 1996-05-10 Jungtinėje Karalystėje ir 2006-05-10 Jungtinėse Amerikos Valstijose. Būtinai rašykite datos raides su skaičiaus ženklu (#), kaip parodyta toliau pateiktuose pavyzdžiuose.

Norėdami rasti įrašus, kurių data yra May 10, 1996 Jungtinės Karalystės duomenų bazėje, turite naudoti šį SQL sakinį:

SELECT * FROM Orders WHERE ShippedDate = #5/10/96#;

Taip pat galite naudoti funkciją DateValue, kuri atsižvelgia į tarptautinius parametrus, nustatytus „Microsoft Windows®“ sistemos. Pavyzdžiui, naudokite šį kodą Jungtinių Valstijų tipo datai nurodyti:

SELECT * FROM Orders WHERE ShippedDate = DateValue('5/10/96');

Ir naudokite šį kodą Jungtinės Karalystės tipo datai nurodyti:

SELECT * FROM Orders WHERE ShippedDate = DateValue('10/5/96');

Pastaba: Jei stulpelio, nurodyto kriterijų eilutėje, tipas yra GUID, kriterijų reiškinio sintaksė šiek tiek skiriasi:

WHERE ReplicaID = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}

Būtinai įtraukite riestinius skliaustus ir brūkšnelius, kaip parodyta.

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.