ORDER BY bandidan foydalanish mumkin va u yakuniy
SELECT iborasidan keyin kelishi kerak. So‘rov natijalarining bir qismini bir tarzda, bir qismini
boshqa yo‘l bilan saralash mantiqiy emas, shuning uchun bir nechta ORDER BY bandlariga ruxsat
berilmaydi.
Quyidagi misol oldingi UNION operatori tomonidan qaytarilgan natijalarni tartiblaydi.
SELECT cust_name, cuSt_contact, cust_email FROM Customers WHERE cust_state IN (’IL', ‘IN’,
‘MI’)
UNION SELECT cust_name, cust_contact, cust_email FROM Customers WHERE cust_name =
‘Fun4All’
ORDER BY cust_name, cust_contact;
Natija:
cust name
oust contact
cust email
Fun4All
Denise L.Stephens
dstephens@fun4all.com
Fun4All
Jim Jones
j jones@fun4all.com
The Toy Stor
Kim Howard
NULL
Village Toys
John Smith
sales@villagetoys.com
Murakkab so'rovlarning boshqa turlari. Ba'zi MBBTlar murakkab so'rovlarning ikkita
qo'shimcha turini qo'llab-quvvatlaydi. EXCEPT bayonoti (ba'zan minus deb ataladi) faqat birinchi
jadvalda mavjud bo'lgan, lekin ikkinchisida bo'lmagan qatorlarni chiqarish uchun ishlatilishi mumkin
va
INTERSECT operatori faqat ikkala jadvalda mavjud bo'lgan qatorlarni chiqarish uchun ishlatilishi
mumkin. Biroq, amalda bunday so'rovlar kamdan-kam hollarda kerak bo'ladi, chunki bir xil natijalarni
qo'shilish orqali olish mumkin.
Eslatma. Oddiylik uchun ushbu darsdagi misollarda
UNION operatori so'rovlarni bir xil
jadvalga qo'shish uchun ishlatilgan. Ammo amalda bu operator bir nechta jadvallardan, xususan, mos
kelmaydigan ustun nomlarini o'z ichiga olgan ma'lumotlarni birlashtirish uchun ayniqsa foydalidir.
Ikkinchi holda, bitta natijalar to'plamini olish uchun taxalluslardan foydalanishingiz mumkin.
Do'stlaringiz bilan baham: |