Access SQL: מושגים בסיסיים, אוצר המילים, ותחביר

Access SQL: מושגים בסיסיים, אוצר המילים, ותחביר

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

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

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

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

במאמר זה

מהו SQL?

משפטי SQL בסיסיות: בחירה, מאת, והיכן

מיון התוצאות: לפי סדר

עבודה עם נתונים מסוכמים: קיבוץ לפי ועבור HAVING

שילוב תוצאות של שאילתה: איחוד

מהו SQL?

SQL היא שפת מחשב לעבודה עם ערכות עובדות וקשרי הגומלין ביניהן. תוכניות של מסדי נתונים יחסיים, כגון Microsoft Office Access, השתמש ב- SQL כדי לעבוד עם נתונים. שלא כמו שפות רבות של המחשב, SQL אינה קשה לקרוא ולהבין, גם עבור מתחיל. שפות מחשב רבים, כגון SQL הוא תקן בינלאומי מזוהה על-ידי גופי תקנים כגון ISO ו- ANSI.

עליך להשתמש ב- SQL כדי לתאר ערכות נתונים שיכולים לסייע לך לענות על שאלות. כאשר אתה משתמש ב- SQL, עליך להשתמש בתחביר הנכון. תחביר הוא הקבוצה של כללים שלפיו הרכיבים של שפה משולבים באופן תקין. תחביר SQL המבוסס על תחביר באנגלית ולאחר משתמשת רבות שאותם רכיבים בתור Visual Basic for Applications (VBA) תחביר.

לדוגמה, משפט SQL פשוט מאחזרת רשימה של שמות משפחה של אנשי הקשר שאת firstname אינו Mary עשוי להיראות כך:

SELECT Last_Name
FROM Contacts
WHERE First_Name = 'Mary';

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

משפטי SELECT

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

  • אילו טבלאות מכילות את הנתונים.

  • כיצד קשורה של נתונים ממקורות שונים.

  • אילו שדות או חישובים ייצרו את הנתונים.

  • קריטריונים התואמים הנתונים חייבים להיכלל.

  • האם ניתן למיין את התוצאות.

משפטי SQL

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

משפט SQL

הפעולה המבוצעת

נדרש

SELECT

פירוט השדות המכילים נתונים רצויים.

כן

‎FROM

פירוט הטבלאות המכילות את השדות המפורטים במשפט SELECT.

כן

WHERE

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

לא

ORDER BY

קביעת אופן המיון של התוצאות.

לא

GROUP BY

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

רק אם קיימים שדות כאלה

HAVING

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

לא

תנאי SQL

כל משפט SQL מורכבת של מונחים — מקבילה לאיכות חלקים דיבור. הטבלה הבאה מפרטת סוגים של מונחים SQL.

מונח SQL

חלק דיבור השוואתי

הגדרה

דוגמה

מזהה

שם עצם

שם המשמש לזיהוי אובייקט מסד נתונים, כגון השם של שדה.

לקוחות. [מספר טלפון]

אופרטור

פועל או הפועל

מילת מפתח המייצגת פעולה או משנה פעולה.

AS

קבוע

שם עצם

ערך שאינו משתנה, כגון מספר או NULL.

42

expression

תואר

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

‎>= Products.[Unit Price]‎

לראש הדף

משפטי SQL בסיסיות: בחירה, מאת, והיכן

משפט SQL מקבלת את הטופס כללי:

SELECT field_1
FROM table_1
WHERE criterion_1
;

הערות: 

  • Access מתעלם מעברי שורה במשפט SQL. עם זאת, שקול להשתמש בקו עבור כל משפט כדי לעזור לשפר את מידת הקריאות של משפטי SQL שלך עבורך ועבור משתמשים אחרים.

  • כל משפט SELECT מסתיים בנקודה-פסיק (;). נקודה-פסיק עשויים להופיע בסוף הפסוקית האחרונה או בשורה בפני עצמה בסוף משפט ה-SQL.

דוגמה ב- Access

הבאות ממחיש משפט SQL עבור שאילתת בחירה פשוטה עשוי להיראות ב- Access:

כרטיסיית אובייקטים של SQL המציגה משפט SELECT

1. משפט select

2. פסוקית FROM

3. פסוקית WHERE

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

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

משפט SELECT

SELECT [E-mail Address], Company

זהו משפט SELECT. הוא מורכב אופרטור (בחירה) ואחריו שני מזהים ([כתובת דואר אלקטרוני] ו- Company).

אם מזהה מכיל רווחים או תווים מיוחדים (כגון "כתובת הדואר האלקטרוני"), עליו להיות מוקף בסוגריים מרובעים.

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

משפט SELECT מופיעה תמיד לפני ה-from במשפט SELECT.

ה-from

FROM Contacts

זהו ה-from. הוא מורכב אופרטור (מאת) ואחריו מזהה (אנשי קשר).

משפט from אינה מפרטת את השדות ייבחר.

פסוקית WHERE

WHERE City="Seattle"

זהו ה-where. הוא מורכב אופרטור (במקומות) ואחריו ביטוי (City = "תל-אביב").

הערה: בניגוד בחר ומתוך פסוקיות, ה-where הוא לא רכיב נדרש של משפט SELECT.

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

לראש הדף

מיון התוצאות: לפי סדר

בדומה ל- Microsoft Excel, Access מאפשר לך למיין את תוצאות השאילתה בגליון. באפשרותך גם לציין שאילתה כיצד ברצונך למיין את התוצאות בעת הפעלת השאילתה, על-ידי שימוש פסוקית ORDER by. אם אתה משתמש פסוקית ORDER by, הגיע הפסוקית האחרונה במשפט SQL.

פסוקית ORDER by מכיל רשימה של השדות שברצונך להשתמש בו למיון, באותו סדר שבו ברצונך להחיל את פעולות מיון.

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

ORDER BY Company DESC, [E-mail Address]

הערה: כברירת מחדל, Access ממיין ערכים בסדר עולה (A-Z, מהקטן ביותר לגדול ביותר). השתמש במילת המפתח DESC כדי למיין את ערכי בסדר יורד במקום זאת.

לקבלת מידע נוסף אודות פסוקית ORDER BY, עיין בנושא סדר על-ידי משפט.

לראש הדף

עבודה עם נתונים מסוכמים: קיבוץ לפי ועבור HAVING

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

SELECT COUNT([E-mail Address]), Company

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

ציון שדות שבהם לא נעשה שימוש בפונקציית צבירה: פסוקית קיבוץ לפי

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

פסוקית GROUP by מייד לאחר ה-where או ה-from אם ישנו ללא פסוקית WHERE. פסוקית GROUP by פירוט השדות כפי שהם מופיעים במשפט select.

לדוגמה, בהמשך בדוגמה הקודמת, אם ה-select חל פונקציית צבירה [כתובת דואר אלקטרוני], אך לא לרכיבי חברה, שלך פסוקית GROUP BY בדרך כלל להיראות כך:

GROUP BY Company

לקבלת מידע נוסף אודות פסוקית GROUP BY, עיין בנושא הקבוצה על-ידי משפט.

הגבלת ערכי צבירה באמצעות קריטריונים קבוצה: פסוקית HAVING

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

לדוגמה, נניח שאתה משתמש בפונקציה AVG (המחשבת ערך ממוצע) בשדה הראשון במשפט select שלך:

SELECT COUNT([E-mail Address]), Company

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

HAVING COUNT([E-mail Address])>1

הערה: שאילתה יכולים להכיל פסוקית WHERE פסוקית HAVING — קריטריונים עבור שדות שבהם לא נעשה שימוש בפונקציית צבירה לעבור במשפט where ועבור קריטריונים עבור שדות הנמצאים בשימוש עם פונקציות צבירה במשפט HAVING.

לקבלת מידע נוסף אודות פסוקית HAVING, עיין בנושא פסוקית נתקל.

לראש הדף

שילוב תוצאות של שאילתה: איחוד

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

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

הערה: למטרת שאילתות איחוד, סוגי הנתונים 'מספר' ו'טקסט' תואמים.

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

תחביר SQL הבסיסי עבור שאילתת איחוד המשלבת שני משפטי SELECT הוא כדלקמן:

SELECT field_1
FROM table_1
UNION [ALL]
SELECT field_a
FROM table_a
;

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

SELECT name, price, warranty_available, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee_available, exclusive_offer
FROM Services
;

לקבלת מידע נוסף אודות אופן שילוב משפטי SELECT באמצעות האופרטור UNION, ראה שילוב התוצאות של כמה שאילתות בחירה באמצעות שאילתת איחוד.

לראש הדף

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

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

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

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

×