logo

MySQL מצטרפת

משתמשים ב-MySQL JOINS עם הצהרת SELECT. הוא משמש לאחזור נתונים ממספר טבלאות. זה מבוצע בכל פעם שאתה צריך להביא רשומות משתי טבלאות או יותר.

טקסט מודגש css

ישנם שלושה סוגים של MySQL מצטרף:

  • MySQL INNER JOIN (או לפעמים נקרא הצטרפות פשוטה)
  • MySQL LEFT OUTER JOIN (או לפעמים נקרא LEFT JOIN)
  • MySQL RIGHT OUTER JOIN (או לפעמים נקרא RIGHT JOIN)

MySQL Inner JOIN (הצטרפות פשוטה)

ה-MySQL INNER JOIN משמש להחזרת כל השורות ממספר טבלאות שבהן מתקיים תנאי החיבור. זהו סוג ההצטרפות הנפוץ ביותר.

תחביר:

 SELECT columns FROM table1 INNER JOIN table2 ON table1.column = table2.column; 

ייצוג תמונה:

mysql join 1

ניקח דוגמה:

שקול שתי טבלאות 'קצינים' ו'סטודנטים', בעלות הנתונים הבאים.

mysql join 2

בצע את השאילתה הבאה:

 SELECT officers.officer_name, officers.address, students.course_name FROM officers INNER JOIN students ON officers.officer_id = students.student_id; 

תְפוּקָה:

mysql join 3

MySQL Left Outer Join

ה-LEFT OUTER JOIN מחזיר את כל השורות מהטבלה השמאלית שצוינה בתנאי ON ורק את השורות מהטבלה האחרת שבה מתקיים תנאי החיבור.

תחביר:

 SELECT columns FROM table1 LEFT [OUTER] JOIN table2 ON table1.column = table2.column; 

ייצוג תמונה:

mysql join 4

ניקח דוגמה:

שקול שתי טבלאות 'קצינים' ו'סטודנטים', בעלות הנתונים הבאים.

mysql join 5

בצע את השאילתה הבאה:

 SELECT officers.officer_name, officers.address, students.course_name FROM officers LEFT JOIN students ON officers.officer_id = students.student_id; 

תְפוּקָה:

mysql join 6

MySQL Right Outer Join

ה-MySQL Right Outer Join מחזיר את כל השורות מטבלת יד ימין שצוינה בתנאי ON ורק השורות מהטבלה האחרת שבה הוא מתקיים.

תחביר:

 SELECT columns FROM table1 RIGHT [OUTER] JOIN table2 ON table1.column = table2.column; 

ייצוג תמונה:

mysql join 7

ניקח דוגמה:

מחרוזת של int

שקול שתי טבלאות 'קצינים' ו'סטודנטים', בעלות הנתונים הבאים.

mysql join 8

בצע את השאילתה הבאה:

 SELECT officers.officer_name, officers.address, students.course_name, students.student_name FROM officers RIGHT JOIN students ON officers.officer_id = students.student_id; 

תְפוּקָה:

mysql join 9