Access SQL: משפט WHERE

זהו מאמר אחד מתוך סדרה של מאמרים בנושא Access SQL. מאמר זה מתאר כיצד לכתוב פסוקית WHERE, ומשתמש בדוגמאות כדי להמחיש טכניקות שונות שבהן תוכל להשתמש בפסוקית WHERE.

במשפט SQL, הפסוקית WHERE מציין קריטריונים שערכי השדה חייבים לעמוד בהם עבור רשומות המכילות את הערכים שיש לכלול בתוצאות השאילתה.

למבט כולל על Access SQL, עיין במאמר Access SQL: מושגים בסיסיים, אוצר מילים ותחביר.

במאמר זה

הגבלת התוצאות באמצעות קריטריונים

תחביר של פסוקית WHERE

שימוש בפסוקית WHERE כדי לשלב מקורות נתונים

הגבלת התוצאות באמצעות קריטריונים

כאשר ברצונך להשתמש בנתונים כדי להגביל את מספר הרשומות המוחזרות בשאילתה, באפשרותך להשתמש ב- קריטריונים. קריטריון שאילתה דומה לנוסחה — זוהי מחרוזת שעשויה להכיל הפניות לשדות, אופרטורים וקבועים. קריטריוני שאילתה הם סוג של ביטוי.

הטבלה הבאות מציגה כמה קריטריונים לדוגמה ומסבירה כיצד הם עובדים.

קריטריון

תיאור

>25 ו- <50

קריטריון זה חל על שדה מספר, כגון Price (מחיר) או UnitsInStock (יחידות במלאי). הוא כולל רק את הרשומות שבהן שדה המחיר או היחידות במלאי מכיל ערך גדול יותר מ- 25 וקטן יותר מ- 50.

‎DateDiff ("yyyy", [BirthDate], Date()) > 30‎

קריטריון זה חל על שדה תאריך/שעה, כגון BirthDate (תאריך לידה). רק רשומות שבהן מספר השנים שבין תאריך הלידה של אדם והתאריך של היום גדול יותר מ- 30 נכללות בתוצאת השאילתה.

Is Null

קריטריון זה יכול לחול על כל סוג של שדה כדי להציג רשומות כאשר ערך השדה הוא Null.

כפי שהטבלה הקודמת מראה, קריטריונים יכולים להיראות שונים מאוד זה מזה, בהתאם לסוג הנתונים של השדה שעליו הקריטריונים חלים ולדרישות הספציפיות שלך. כמה מהקריטריונים פשוטים, ומשתמשים בקבועים ובאופרטורים בסיסיים. קריטריונים אחרים הם מורכבים, ומשתמשים בפונקציות ובאופרטורים מיוחדים, וכוללים הפניות לשדות.

חשוב: אם שדה נמצא בשימוש עם פונקציית צבירה, אין באפשרותך לציין קריטריונים עבור שדה זה בפסוקית WHERE. במקום זאת, השתמש בפסוקית HAVING כדי לציין קריטריונים עבור שדות צבורים. לקבלת מידע נוסף, עיין במאמרים Access SQL: מושגים בסיסיים, אוצר מילים ותחביר ומשפט HAVING.

תחביר של פסוקית WHERE

עליך להשתמש בקריטריוני שאילתה בפסוקית WHERE של משפט SELECT.

פסוקית WHERE מבוססת על התחביר הבסיסי הבא:

WHERE field = criterion

לדוגמה, נניח שאתה רוצה לאתר את מספר הטלפון של לקוח, אך אתה זוכר רק ששם המשפחה של הלקוח הוא מלמד. במקום לחפש בכל מספרי הטלפון במסד הנתונים, באפשרותך להשתמש בפסוקית WHERE כדי להגביל את התוצאות ולמצוא את מספר הטלפון הרצוי לך בקלות רבה יותר. בהנחה ששמות המשפחה מאוחסנים בשדה בשם LastName, משפט WHERE ייראה כך:

WHERE [LastName]='Bagel'

הערה: אינך צריך לבסס את הקריטריונים בפסוקית WHERE על שוויון בין ערכים. ניתן להשתמש באופרטורים אחרים של השוואה, כגון גדול מ- (>) או קטן מ- (<). לדוגמה, WHERE [Price]>100.

שימוש בפסוקית WHERE כדי לשלב מקורות נתונים

לפעמים ברצונך לשלב מקורות נתונים בהתבסס על שדות שמכילים נתונים תואמים, אך סוגי נתונים שונים. לדוגמה, שדה בטבלה אחת עשוי להכיל נתונים מסוג 'מספר', וברצונך להשוות שדה זה לשדה בטבלה אחרת המכילה נתונים מסוג 'טקסט'.

לא ניתן ליצור צירוף בין שדות בעלי סוגי נתונים שונים. כדי לשלב נתונים משני מקורות נתונים בהתבסס על ערכים בשדות בעלי סוגי נתונים שונים, צור משפט WHERE שמשתמש בשדה אחד כקריטריון לשדה השני, על-ידי שימוש במילת המפתח LIKE.

לדוגמה, נניח שברצונך להשתמש בנתונים מטבלה1 וטבלה2, אך רק כאשר הנתונים בשדה1 (שדה טקסט בטבלה1) תואמים לנתונים בשדה2 (שדה מספר בטבלה2). משפט WHERE שלך ייראה בערך כך:

WHERE field1 LIKE field2

לקבלת מידע נוסף על האופן שבו יש ליצור קריטריונים לשימוש בפסוקית WHERE, עיין במאמר דוגמאות לקריטריוני שאילתות.

לראש הדף

שפר את הכישורים שלך ב- Office
סייר בהדרכה
קבל תכונות חדשות לפני כולם
הצטרף למשתתפי Office Insider

האם מידע זה היה שימושי?

תודה על המשוב!

תודה על המשוב! נראה שכדאי לקשר אותך לאחד מנציגי התמיכה של Office.

×