آموزش طراحی وب

عملگر JOIN در MySql

در این مقاله ی آموزشی در رابطه با عملگر JOIN و INNER JOIN در MySql صحبت می کنیم و با ذکر مثال این عملگرها رو آموزش میدیم.

 join

عملگر join در MySql

سلام خدمت همراهان همیشگی مدرسه مجازی ایرانیان

در این مقاله ی آموزشی در رابطه با عملگر JOIN و INNER JOIN در MySql صحبت می کنیم و با ذکر مثال این عملگرها رو آموزش میدیم.

در جلسات آینده به معرفی و آموزش انواع JOIN در MYSQL می پردازیم.

 

عملگر JOIN چیست؟

با استفاده از این عملگر شما می تونید بین چند جدول اتصال برقرار کنید و یک سری رکوردهارو بگیرید و نمایش بدید. مثلا دو جدول بنام news و  category داریم. حالا میخوایم اخبار مربوط به یه دسته بندی خاص رو به همراه نام دسته بندی نمایش بدیم. در اینجا ما باید تیتر اخبار رو از جدول news بگیریم و نام دسته بندی رو از category بگیریم. خوب باید از یه عملگری استفاده کنیم تا بتونیم بین این دو جدول اتصال برقرار کنیم که این عملگر join هست.

عملگر JOIN انواع مختلفی داره. که در جلسات آینده با اونها آشنا میشید. عملگر JOIN معادل عملگر INNER JOIN هست. یعنی هر دوی این دو عملگر کار یکسانی انجام میدن. به عبارتی JOIN عملگر کلیدی هست که انواع مختلفی رو معرفی میکنه. پس بجای استفاده از JOIN از  INNER JOIN استفاده میکنیم.

در این عملگر مقادیر باید هم در جدول سمت چپ یعنی news  و هم در جدول سمت راست یعنی category وجود داشته باشه. در غیر اینصورت رکوردی به شما برنمیگردونه.

 

عملگر INNER JOIN

برای مثال فرض کنیم دو جدول به نام های news و  category داریم. که به شکل زیر هستند.

category

newstable

حالا میخوایم تمامی خبرهای دسته بندی شماره ۱ که میشه اخبار اقتصادی رو بگیریم و همراه با نام دسته بندی نمایش بدیم. اگر دقت کرده باشید نام دسته بندی در جدول category هست، پس باید یه اتصالی بین این دو جدول برقرار کنیم. از عملگر INNER JOIN استفاده می کنیم. کوئری ما به شکل زیر خواهد بود:

تفسیر این کوئری :

در خط اول گفتیم از جدول news مقادیر فیلد title تمامی رکوردها و از جدول category فیلد نام category_name رو انتخاب کن.

در خط دوم select اصلی از جدول news هست.

در خط سوم در Inner JOIN گفتیم با جدول category ارتباط برقرار کن ، در حالی که فیلد id جدول category برابر با فیلد category_id جدول news باشه. فیلد id در جدول  category کلید اصلی و فیلد category_id در جدول  news کلید خارجی نامیده میشه. که با استفاده از این کلیدها میتونید بین جداول رابطه برقرار کنید.

در خط چهارم شرط برقرار کردیم و گفتیم رکوردهایی رو انتخاب کن که  category_id اونها برابر با ۱ باشه. یعنی اخبار اقتصادی.

نکته : چون داریم از چند جدول فیلدهارو صدا میزنیم باید نام جدول رو ابتدای فیلد با یک “نقطه” قرار بدیم. دقت داشته باشید بجای علامت ” ` ” از علامت تک کوتیشن  ” ‘ ” استفاده نکنید. البته میتونید کلا از این علامت هم استفاده نکنید.

خوب نتایجی که به ما بر میگردونه به شکل زیر خواهد بود :

result

Stored Procedure این کوئری

SP کوئری بالا به شکل زیر خواهد بود:

نام این SP رو  sp_news_SelectAllWithCategory  گذاشتیم . شما هر نامی که خواستید میتونید برای sp تون تعیین کنید.

امیدوارم که این مقاله براتون مفید بوده باشه.

تهیه شده در مدرسه مجازی ایرانیان

حسین همت یار

نویسنده در مدرسه مجازی ایرانیان ، دانشجوی رشته IT ، طراح وب و علاقه مند به تازه های دنیای اینترنت و وب و البته لینوکس

ثبت دیدگاه

آیا سوالی دارید؟

پنل کاربران

بستن
*
*

نظرسنجی

به کدام دسته موضوعی علاقه مند هستید؟

آخرین پرسش و پاسخ ها

اموزش تصادفی

خبرهای باحال دریافت کن

خبرهای باحال دریافت کن

ما هم مثل شما از دریافت ایمیل های مزاحم خوشمون نمیاد. فقط مطالب جدید و خبرهای ویژه رو به اطلاع شما میرسونیم. قول میدیم اسپم نکنیم :)

ثبت نام انجام شد ، لطفا ایمیلی که براتون ارسال میشه رو تایید کنین