Klauzula WHERE

Norāda, uz kuriem klauzulā FROM norādīto tabulu ierakstiem attiecas priekšraksts SELECT, UPDATE vai DELETE.

Sintakse

SELECT lauku_saraksts
FROM tabulas_izteiksme
WHERE kritēriji

Priekšrakstam SELECT ar klauzulu WHERE ir šādas daļas:

Daļa

Apraksts

lauku_saraksts

Izgūstamais lauka vai lauku nosaukums kopā ar lauku nosaukumu aizstājvārdiem, atlases predikātiem (ALL, DISTINCT, DISTINCTROW vai TOP) vai citu priekšraksta SELECT opciju.

tabulas_izteiksme

Tās tabulas vai tabulu nosaukums, no kurām jāizgūst dati.

kritēriji

izteiksme, kurai ierakstiem jāatbilst, lai tie tiktu iekļauti vaicājuma rezultātos.


Piezīmes

Microsoft Access datu bāzes programma atlasa ierakstus, kuri atbilst klauzulā WHERE norādītajiem nosacījumiem. Ja nenorādāt klauzulu WHERE, vaicājums atgriež visas tabulas rindas. Ja vaicājumā norādāt vairāk nekā vienu tabulu un nav iekļauta klauzula WHERE vai JOIN, vaicājuma rezultātā tiek ģenerēts tabulu Dekarta rezultāts.

WHERE ir neobligāta, bet, ja tā tiek iekļauta, tā seko FROM. Piemēram, varat atlasīt visus pārdošanas nodaļas darbiniekus (WHERE Dept = 'Sales') vai visus klientus vecumā no 18 līdz 30 gadiem (WHERE Age Between 18 And 30).

Ja neizmantojat klauzulu JOIN, lai veiktu SQL apvienošanas darbības vairākām tabulām, rezultātā izveidoto Recordset objektu nevarēs atjaunināt.

WHERE ir līdzīga HAVING. WHERE nosaka, kuri ieraksti tiek atlasīti. Līdzīgi pēc ierakstu grupēšanas ar klauzulu GROUP BY klauzula HAVING nosaka, kuri ieraksti ir jārāda.

Izmantojiet klauzulu WHERE, lai izslēgtu ierakstus, kurus nevēlaties grupēt ar klauzulu GROUP BY.

Izmantojiet dažādas izteiksmes, lai noteiktu, kurus ierakstus atgriež SQL priekšraksts. Piemēram, šis SQL priekšraksts atlasa visus darbiniekus, kuru alga ir lielāka par 21 000 EUR:

SELECT LastName, Salary FROM Employees WHERE Salary > 21000;

Klauzulā WHERE var būt līdz pat 40 ar loģiskiem operatoriem saistītām izteiksmēm, piemēram, And un Or.

Ievadot lauka nosaukumu, kas satur atstarpi vai pieturzīmi, nosaukums ir jāliek iekavās ([ ]). Piemēram, klientu informācijas tabulā var būt informācija par noteiktiem klientiem:

SELECT [Customer’s Favorite Restarant]

Norādot kritērija argumentu, datuma literāļiem ir jābūt ASV formātā, pat ja neizmantojat Microsoft Access datu bāzes programmas ASV paredzēto versiju. Piemēram, 1996. gada maijs Lielbritānijā tiek rakstīts 10/5/96, bet ASV — 5/10/96. Pirms un pēc datuma literāļiem ierakstiet numura zīmi (#), kā redzams piemēros tālāk.

Lai atrastu ierakstus, kuri ir datēti ar 1996. gada 10. maiju, Lielbritānijas datu bāzē, jāizmanto šāds SQL priekšraksts:

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

Var arī izmantot funkciju DateValue, kura izmanto Microsoft Windows® noteiktos starptautiskos iestatījumus. Piemēram, ASV lietojiet šādu kodu:

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

Savukārt Lielbritānijā izmantojiet šādu kodu:

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

Piezīme : Ja kolonnas, uz kuru ir atsauce kritērija virknē, tips ir GUID, kritēriju izteiksmei ir jāizmanto nedaudz atšķirīga sintakse:

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

Obligāti iekļaujiet ligzdotās figūriekavas un defises, kā redzams piemērā.



Paplašiniet savas prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Office Insider programmai

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta aģentiem.

×