צירוף טבלאות ושאילתות

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

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

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

הערה: באפשרותך להצטרף שאילתות באותו אופן שאתה לצרף טבלאות ולאחר גם יכולים להצטרף שתיהן.

במאמר זה

מבט כולל

סוגי צירופים

הצגת שורות שבהן קיים ערך משותף בשתי הטבלאות המצורפות

הצגת כל השורות מטבלה אחת, והשורות התואמות מהטבלה האחרת

הצגת כל השורות משתי הטבלאות ולהצטרף אותם שבהן קיים ערך משותף

צירופים מוצלבים

צרף טבלאות בהתבסס על אי-שוויון של ערכי שדות

מחיקת צירוף

מבט כולל

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

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

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

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

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

התיבה 'מאפייני צירוף'

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

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

אזור זה קובע את סוג הצירוף: אפשרות 1 היא צירוף פנימי, 2 היא צירוף חיצוני שמאלי ו- 3 היא צירוף חיצוני ימני.

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

לראש הדף

סוגי צירופים

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

צירופים פנימיים: רק נתונים קשורים משתי הטבלאות משולבים

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

צירופים חיצוניים: כל הנתונים הקשורים משולבים באופן תקין, ובנוסף מופיעות כל שאר הרשומות מטבלה אחת

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

צירופים חיצוניים מלאים: כל הנתונים, משולבים כאשר הדבר אפשרי

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

צירופים מוצלבים: כל הנתונים, בכל שילוב אפשרי

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

צירופי אי-שוויון: כמו צירוף רגיל, אך השוואה שונה משמשת לשילוב השורות

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

הצגת שורות שבהן קיים ערך משותף בשתי הטבלאות המצורפות

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

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

כיצד ניתן להשתמש בצירוף פנימי?

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

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

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

תחביר SQL עבור צירוף פנימי

צירופים פנימיים מוגדרים ב- SQL בפסוקית FROM, כפי שמוצג להלן:

מ- table1 צירוף פנימי table2 ב- table1. field1 להשוות table2. field2

פעולת INNER JOIN כוללת חלקים אלה:

חלק

תיאור

table1, table2

שמות הטבלאות שמתוכן משולבות רשומות.

field1, field2

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

השוואה בין

כל אופרטור השוואה יחסי: "=", "<‎", ">", ‏"‎<=‎", ‏"‎>=‎" או "<>".

לקבלת מידע נוסף אודות תחביר של צירוף פנימי, עיין בנושא פעולת INNER JOIN.

לראש הדף

הצגת כל השורות מטבלה אחת, והשורות התואמות מהטבלה האחרת

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

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

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

מכיוון שלחלק מהשורות בצד אחד של צירוף חיצוני לא יהיו שורות תואמות בטבלה האחרת, חלק מהשדות שיוחזרו בתוצאות השאילתה מהטבלה האחרת יהיו ריקים כאשר השורות לא יהיו תואמות.

כיצד ניתן להשתמש בצירוף חיצוני?

באפשרותך ליצור צירוף חיצוני על-ידי שינוי צירוף פנימי קיים. אם לא קיים צירוף פנימי, עליך ליצור אותו ולאחר מכן לשנות אותו לצירוף חיצוני.

שינוי צירוף פנימי לצירוף חיצוני

  1. בתצוגת עיצוב שאילתה, לחץ פעמיים על הצירוף שברצונך לשנות.

    תיבת הדו-שיח מאפייני הצירוף תופיע.

  2. בתיבת הדו-שיח מאפייני צירוף, שים לב לאפשרויות המפורטות לצד אפשרות 2 ואפשרות 3.

  3. לחץ על האפשרות שבה ברצונך להשתמש ולאחר מכן לחץ על אישור.

  4. Access מציג את הצירוף ומראה חץ המצביע ממקור הנתונים שבו נכללות כל השורות אל מקור הנתונים שבו נכללות רק השורות המתאימות לתנאי הצירוף.

צירופים חיצוניים שאינם חד-משמעיים

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

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

תחביר SQL עבור צירוף חיצוני

צירופים חיצוניים מוגדרים ב- SQL בפסוקית FROM, כפי שמוצג להלן:

מ- table1 [שמאלה | צירוף השמאלית] table2
על table1.field1 להשוות table2.field2

פעולות LEFT JOIN ו- RIGHT JOIN כוללות חלקים אלה:

חלק

תיאור

table1, table2

שמות הטבלאות שמתוכן משולבות רשומות.

field1, field2

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

השוואה בין

כל אופרטור השוואה יחסי: "=", "<‎", ">", ‏"‎<=‎", ‏"‎>=‎" או "<>".

לקבלת מידע נוסף אודות תחביר של צירוף חיצוני, עיין בנושא LEFT JOIN, פעולות צירוף מימין.

לראש הדף

הצגת כל השורות משתי הטבלאות ולהצטרף אותם שבהן קיים ערך משותף

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

כדי להשתמש בשאילתת איחוד לביצוע צירוף חיצוני מלא:

  1. צור שאילתה הכוללת צירוף חיצוני שמאלי בשדה שבו ברצונך להשתמש עבור צירוף חיצוני מלא.

  2. בכרטיסיה בית, בקבוצה תצוגות, לחץ על תצוגה ולאחר מכן לחץ על תצוגת SQL.

  3. הקש CTRL + C כדי להעתיק את קוד ה-SQL.

  4. מחק את הנקודה-פסיק שבסוף המשפט from, ולאחר מכן הקש ENTER.

  5. הקלד UNION ולאחר מכן הקש ENTER.

    הערה: אל תשתמש במילת המפתח ALL בעת שימוש בשאילתת איחוד לביצוע צירוף חיצוני מלא.

  6. הקש CTRL + V כדי להדביק את קוד ה-SQL שהעתקת בשלב 3.

  7. בקוד שהדבקת, שנה את LEFT JOIN ל- RIGHT JOIN.

  8. מחק הנקודה-פסיק שבסוף המשפט השני משפט ולאחר מכן הקש ENTER.

  9. הוסף משפט WHERE המציין שהערך של שדה הצירוף הוא NULL בטבלה הראשונה המפורטת במשפט ה- FROM (הטבלה השמאלית).

    לדוגמה, אם משפט ה- FROM הוא:

    FROM Products RIGHT JOIN [Order Details] 
    ON Products.ID = [Order Details].[Product ID]

    הוסף משפט where הבאה:

    WHERE Products.ID IS NULL

  10. הקלד נקודה-פסיק (;) בסוף משפט ה- WHERE כדי לציין את סוף שאילתת האיחוד.

  11. בכרטיסיה עיצוב, בקבוצה תוצאות, לחץ על הפעל.

צירופים מוצלבים

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

מדוע כדאי לי להשתמש בצירוף מוצלב?

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

כיצד ניתן להשתמש בצירוף מוצלב?

צירוף מוצלב מופק בכל פעם שאתה כולל טבלאות או שאילתות בשאילתה שלך לא וצור צירוף אחד לפחות מפורש עבור כל טבלה או שאילתה. Access משלב כל שורה כל מטבלה או שאילתה במפורש שאינו מצורף לכל טבלה או שאילתה כדי כל שורה שניה בתוצאות. שקול התרחיש הנחות הקודמת. בהנחה שיש לך 91 לקוחות, שברצונך נבחן 5 אחוזי הנחות אפשריים. צירוף מוצלב שלך מייצר 455 שורות (התוצאה של 91 ו- 5).

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

צירוף מוצלב לא מכוון בתצוגת עיצוב של שאילתה
צירוף מוצלב לא מכוון בתצוגת עיצוב שאילתה.

1. השדות המוקפים צריכים להיות מצורפים אחד לשני.

מוצר מוצלב לא מכוון
מוצר מוצלב המוחזרים על-ידי צירוף מוצלב לא מכוון המתואר לעיל.

1. שים לב מספר הרשומות גדולות מאוד.

תוצאת השאילתה הנכונה
תוצאות לאחר יצירת הצירוף הנכון.

1. שים לב מספר הרשומות קטן הרבה.

לראש הדף

צרף טבלאות בהתבסס על אי-שוויון של ערכי שדות

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

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

כיצד ניתן להשתמש בצירוף אי-שוויון?

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

מחיקת צירוף

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

  1. ברשת העיצוב של השאילתה, לחץ על הצירוף שברצונך להסיר.

  2. לחץ על מחק.

-לחלופין-

  • ברשת עיצוב השאילתה, באמצעות לחצן העכבר הימני על הצירוף שברצונך להסיר ולאחר מכן לחץ על מחק.

לראש הדף

למידע נוסף

הוספת רשומות לטבלה באמצעות שאילתת הוספה

התוצאות של כמה שאילתות בחירה באמצעות שאילתת איחוד

יצירת שאילתה המבוססת על טבלאות מרובות

יצירה, עריכה או מחיקה של קשר גומלין

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

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

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

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

×