UNION, INTERSECT, EXCEPT
156 daq
Ba’zan bir nechta so‘rov natijasini bitta ro‘yxatga birlashtirish yoki ularni solishtirish kerak bo‘ladi. Buning uchun to‘plam amallari bor.
Shart: ustunlar mos bo‘lsin
Birlashtirilayotgan so‘rovlarda ustunlar soni bir xil va turlari mos bo‘lishi kerak. Natijadagi ustun nomlari birinchi so‘rovdan olinadi.
UNION va UNION ALL
Universitetdagi barcha odamlar — talabalar va ustozlar — bitta ro‘yxatda:
university
UNION ALL— hammasini qo‘shadi, takrorlar ham qoladi (tezroq);UNION— takrorlarni olib tashlaydi.
university
INTERSECT — ikkalasida ham bor
Talabalar orasida ham, ustozlar orasida ham uchraydigan familiyalar:
university
EXCEPT — birinchisida bor, ikkinchisida yo‘q
Talabalarda uchraydigan, lekin ustozlarda uchramaydigan familiyalar:
university
1Mashq
Mijozlar (customers.city) va buyurtmalar (orders.city) uchraydigan barcha shaharlarni takrorsiz bitta ro‘yxatda chiqaring.
2Mashq
Kamida bitta buyurtma bergan, lekin hech qachon sharh yozmagan mijozlarning customer_id sini chiqaring (EXCEPT dan foydalaning).
Esda qoldiring
UNION ALL— qo‘shish,UNION— takrorsiz qo‘shish.INTERSECT— umumiy qismi,EXCEPT— farqi.- So‘rovlarda ustunlar soni va turlari mos bo‘lsin.