پاسخ به:آموزش گام به گام SQL Server
جمعه 1 مهر 1390 12:08 AM
سلام
پارامتر Union در دستور Select :
در مواردی نیاز است که چند جدول با ساختارهای یکسان به یکدیگر متصل یا تلفیق شوند پارامتر Union در دستور Select در دو حالت ادغام جداول بصورت منحصر بفرد و یا بصورت تجمعی این فرآیند را انجام می دهد ، در صورتیکه تنها از کلمه Union استفاده گردد ادغام جداول و Union All ترکیب جداول بصورت تجمعی را به همراه خواهد داشت شکل کلی پارامتر Union به صورت ذیل خواهد بود.
دستور Select
] [ Union [All]
دستور Select
.
.
.
مثال) در سیستم پرسنلی جدول محل تولد را با استفاده از Union تلفیق نمائید.
ابتدا تنها از پارامتر Union استفاده می نمائیم بنابراین خواهیم داشت :
Select * From City
Union
Select * From City
حال اگر از پارامتر Union All استفاده نمائیم خواهیم داشت :
Select * From City
Union All
Select * From City
( 52 )
اختلاف دو جدول بازگشتی در این است که چون در حالت اول از پارامتر Union تنها استفاده شده است و جدول City با خودش ادغام شده است پس نتیجه بازگشتی تنها جدول City خواهد بود ولی در حالت دوم جدول City به اندازه دو برابر رکوردهای جدول City تکرار خواهد شد و ادغام منحصر بفرد مقادیر رکوردهای دو جدول صورت نمی گیرد.
مثال) بدون ایجاد جدول فیزیکی ، جدول ذیل را به کاربر درخواست کننده منعکس کنید.
D |
C |
B |
A |
3.7 4.8 5.6 6.7 |
Ok Yes No Ok |
10 15 30 40 |
1 2 3 4 |
بدین منظور از پارامتر Union در دستور Select به شکل ذیل استفاده می نمائیم.
Select A=1 , B=10 , C=´ Ok ´ , D=3.7 Union
Select A=2 , B=15 , C=´ Yes ´ , D=4.8 Union
Select A=3 , B=30 , C=´ No ´ , D=5.6 Union
Select A=4 , B=40 , C=´ Ok ´ , D=6.7