Union
Muzaffar Nurillayev
UNION so'rovi bir nechta SELECT so'rovidan qaytyotgan natijalarni takrorlanmasdan chiqarish uchun kerak bo'ladi. Lekin bu so'rov ishlashi uchun jadvallardan tanlab olingan ustunlar soni, ularning nomi, turi bir xil bo'lishi kerak.
string ma'lumotlar varchar yoki text farq qilmaydi, varcharning o'lchami ham farq qilmaydi
Umumiy ko'rinishi quyidagicha bo'ladi:
Bizda 2 ta jadval bo'lsa:
1-jadval
2-jadval
Union ishlatilishi:
Bu so'rov ikkita jadvaldagi hamma qatorlarni oladida, har birining first_name va last_name bir vaqtning o'zida bir xil bo'lganlarini faqat 1 tasini qaytaradi.
Masalan, 'Muzaffar', 'Nurillayev' ikkita jadvalda ham bo'lsa faqat 1 ta bunaqa qator qaytariladi. Lekin 'Masud', 'Nurillayev' va 'Mahmud', 'Nurillayev' da first_name'lar bir xil bo'lmagani uchun ular qaytariladi.
Bundan bilib olishimiz mumkinki, UNION bu DISTINCT'ning kengaytirilgan varianti ekan.
UNION ALL
Sintaksisi va talablari UNION bilan bir xil. Lekin ishlashida, qaytaradigan qiymatlarida boshqacha bo'ladi. UNION bizga takrorlanuvchilardan faqat bittasini qaytarsa, UNION ALL hamma natijalarni o'zgartirmay qaytaradi. Ya'ni yuqoridagi ikkita jadvaldagi 'Muzaffar', 'Nurillayev' larning ikkovi ham qaytariladi.
Last updated