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

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

دسته بندی موضوعات
سفارش تبلیغات

عملگر UNION در MySql

 union

عملگر UNION و UNION ALL در MySql

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

در این جلسه راجع به union در mysql صحبت میکنیم و با ذکر مثال نحوه ی استفاده از این عملگر رو خدمتتون آموزش میدیم.

 

عملگر UNION

زمانی که شما بخواین از دو یا چند جدول اطلاعات یکسان دریافت کنید و نمایش بدید از این عملگر استفاده می کنید. مثلا یک جدول بنام مشتریان دارید و یک جدول بنام کارمندان دارید. در هر دو جدول فیلدهای نام ، نام خانوادگی ، شماره تماس دارید که میخواین با یک کوئری اطلاعات نام و نام خانوادگی و شماره تماس همه ی مشتریان و کارمندان رو یک جا نمایش بدید. در این موقعیت از union استفاده می کنید. در غیر این صورت باید بصورت مجزا یک select برای جدول مشتریان بنویسید و یک select برای جدول کارمندان بنویسید.

نکته : این عملگر مقادیر غیر تکراری رو انتخاب می کنه و به شما نمایش میده، مثلا اگر بخوایم شماره تماس های کارمندان رو انتخاب کنیم، و دو رکورد با یک شماره تماس داشته باشیم ، یکی از اون رکوردهارو به ما نمایش میده.

خوب حالا با استفاده از union میتونیم با یک کوئری اطلاعات یکسان هر دو جدول رو بگیریم و نمایش بدیم. منظور از اطلاعات یکسان این هست که باید type فیلدهایی که select می کنید یکسان باشه. خوب حالا کوئری مثالی که زدیم رو با استفاده از union مینویسیم:

در مثال بالا با این حال که نام فیلدها متفاوت هست اما type اونها یکسانه ، پس مشکلی بوجود نمیاد. در این کوئری ما نام ، نام خانوادگی و شماره تماس مشتریان + کارمندان رو گرفتیم و در یک کوئری نمایش میدیم.

 

عملگر UNION ALL

این عملگر هم مثل UNION عمل میکنه با این تفاوت که رکوردهای تکراری رو هم انتخاب میکنه و به شما نمایش میده.

 

انتخاب و تفکیک مقادیر یک جدول با عملگر UNION

گاهی پیش میاد که میخوایم مقادیر یک جدول رو تفکیک کنیم و در یک کوئری بگیریم و نمایش بدیم، مثلا یک جدول بنام users داریم که شامل فیلدهای name , family , usertype میشه . اگر usertype مقدار ۱ رو داشته باشه یعنی کارمند و اگر usertype مقدار ۲ رو داشته باشه یعنی مشتری. خوب با این حساب میخوایم یک کوئری بزنیم و بگیم تمامی رکوردهای جدول  users رو با تفکیک کارمند و مشتری بگیر و در یک ستون تمامی این رکوردهارو به ما نمایش بده، کارمندان ابتدای نتایج و مشتریان انتهای نتایج قرار بگیرن.

برای این کار علاوه بر order by میتونیم از UNION هم استفاده کنیم ، به این صورت که ابتدا select برای کارمندان میزنیم و بعد select برای مشتریان میزنیم. کوئری ما به شکل زیر خواهد بود:

این روش رو با ORDER BY هم میتونیم خیلی خلاصه تر انجام بدیم :

 

ORDER BY و Sort رکوردها در UNION

برای اینکه بتونید مقادیر و رکوردهاتون رو مرتب کنید، باید از ORDER BY استفاده کنید. مثلا میخواین رکوردها بر اساس حروف الفبا مرتب و نمایش داده بشن . برای اینکار میتونیم از alias استفاده کنیم:

در مثال بالا برای customernumber و  employeenumber الیاس یا alias با مقدار id در نظر گرفتیم و برای customername و firstname الیاس با مقدار name در نظر گرفتیم و بر اساس name و id مرتبشون کردیم.

در رابطه با ordery by در جلسات آینده بطور کامل صحبت می کنیم.

 

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

موفق و پاینده باشید.

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

<<

>>

اگر این آموزش برای شما مفید بود با دوستان خود به اشتراک بگذارید



سفارش تبلیغات

گردآوری و تالیف : میترا رحیمی

بنیانگذار و نوسنده در مدرسه مجازی ایرانیان و سردبیر ماهنامه طراحی وب همچنین مدرس و مسلط به برنامه نویسی سمت سرور با PHP MVC و برنامه نویسی سمت کلاینت با html 5 , css3 , jquery , مبانی سئو و سیستم مدیریت محتوای وردپرس

خوراک خوشمزه و علمی روزانه
با وارد کردن ایمیلتون در فیلد روبرو آموزش های جذاب و vip دریافت نمایید

آموزش های مرتبط با این مطلب

دیدگاه های مخاطبین

لطفا تنها دیدگاه خود را در رابطه با این مطلب ارسال نمایید، سوالات را از طریق سامانه پرسش و پاسخ مطرح نمایید. سوالات در دیدگاه ها تایید نخواهد شد.

وبلاگ مدرسه

مختصری درباره ما
مدرسه مجازی ایرانیان در زمینه آموزش علوم و فنون طراحی و برنامه نویسی صفحات وب اعم از آموزش زبان های برنامه نویسی و کدنویسی و همچنین آموزش طراحی گرافیک توسط نرم افزارهای گرافیکی پیکسلی و برداری فعالیت دارد .
ورود به وبلاگ

مدرسین مدرسه

  • حسین همت یار

    حسین همت یار

    مدرس ، طراح رابط کاربری وب و موبایل با 8 سال سابقه ی فعالیت حرفه ای

سوابق کامل

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

آخرین پرسش و پاسخ ها
شما هم سوالی دارید ؟