دستور  union در SQL

با نام و یاد خداوند. سلام خدمت کاربران گرامی
با دوره آموزش مبانی SQL Server در خدمت شما عزیزان هستیم.  در جلسه قبل  دستور SELECT در SQL را آموزش دادیم. که این دستور  برای انتخاب و به دست آوردن اطلاعات يک جدول می باشد.در این جلسه به توضیح دستور union در sql می پردازیم.

دستور union : یعنی چند تا دستور select  را با هم جمع کنیم.   

برای مثال قصد داریم که از جدول  student ، دانشجویانی  که سن  آن ها کمتر از ۲۷ سال می باشند را نمایش دهیم به اضافه این که  از جدول  student  دانشجویانی که جنسیت آنها زن می باشند را نیز نمایش دهیم . پس ابتدا با استفاده از دستور select  اطلاعات جدول را مشاهده می کنیم:

select *
from Student

خروجی جدول student:

 

سپس دانشجویانی  که سن  آن ها کمتر از ۲۷ سال می باشد را با استفاده از دستور where  و select  نمایش می دهیم:

select *
from Student
where Age<27

خروجی جدول student با Age<27:

در مرحله بعد دانشجویانی که جنسیت آنها زن می باشند را  با استفاده از دستور where  و select نمایش می دهیم:

select *
from Student
where sex=0

خروجی جدول student با sex=0

هم اکنون قصد داریم با استفاده  از دستور union در sql خروجی این دستورات را داخل یک جدول نمایش دهیم

select *
from Student
where Age<27
union

select *
from Student
where sex=0

خروجی جدول student با دستور union:

البته این دستورات را می توانیم با استفاده از دستور or نیز بنویسیم  بدین صورت:

select *
from Student
where Age<27 or sex=0

خروجی جدول student با دستور or:

مشاهده می کنیم که خروجی این جدول مشابه خروجی جدول بالایی است که با استفاده از دستور union  نوشتیم  اما اگر این دستور را درست بفهمیم می توانیم چندین select را به اضافه هم کنیم.

نکته : در دستور union  الگوی فیلدهایمان باید با هم برابر باشند به عنوان مثال نمی توانیم جلوی دستور select  اولی ، فیلد id  را قرار دهیم  و جلوی دستور select  دومی ، فیلد  Age را قرار دهیم

select id
from Student
where Age<27 or sex=0
union
select Age
from Student
where sex=0  

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

امیدوارم با دستور union در sql به خوبی آشنا شده باشید.در جلسه بعد به آموزش دستور order by در sql می پردازیم. با ما همراه باشید.

با   آموزش مبانی SQL Server در خدمت شما هستیم. لطفا سوالات ، نظرات و پیشنهادات خود را در قسمت دیدگاه ها با ما در میان بگذارید.