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

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

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

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

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

במאמר זה

מבט כולל

סוגי צירופים

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

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

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

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

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

מחיקת צירוף

מבט כולל

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

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

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

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

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

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

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

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

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

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

לראש הדף

סוגי צירופים

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

FROM table1 INNER JOIN table2 ON table1.field1 compare table2.field2

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

חלק

תיאור

table1, table2

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

field1, field2

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

השוות

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

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

לראש הדף

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

מ- table1 [LEFT | ימין] הצטרף table2
ב -table1. field1 השוואה בין table2. field2

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

חלק

תיאור

table1, table2

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

field1, field2

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

השוות

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

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

לראש הדף

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

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

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

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

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

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

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

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

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

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

  7. בקוד שהדבקת, שנה את הצירוף שמאלה לשמאל לימין.

  8. מחק את הנקודה-פסיק בסוף משפט from השני ולאחר מכן הקש 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 ושברצונך להסתכל על חמישה אחוזי הנחה אפשריים. הצירוף המקושר שלך מפיק שורות של 455 (המוצר של 91 ו-5).

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

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

1. יש לצרף את השדות המוקפים זה לזה.

מוצר מוצלב לא מכוון

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

תוצאת השאילתה הנכונה

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

לראש הדף

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

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

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

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

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

מחיקת צירוף

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

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

  2. הקש DELETE.

-לחלופין-

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

לראש הדף

למידע נוסף

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

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

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

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

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

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

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

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

×