SQL UNION operatori


baham ko'ring

SQL UNION operatori

UNION operatori ikki yoki undan ortiq SELECT buyruqlarining natijalar to‘plamini birlashtirish uchun ishlatiladi.

UNION operatori natijalar to‘plamidagi takroriy qatorlarni avtomatik ravishda olib tashlaydi.

Requirements for UNION:

  • UNION ichidagi har bir SELECT buyrug‘i bir xil sondagi ustunlarga ega bo‘lishi kerak
  • Ustunlar bir-biriga mos keluvchi ma’lumotlar turlariga ega bo‘lishi kerak
  • Har bir SELECT buyrug‘idagi ustunlar bir xil tartibda joylashishi kerak

UNION sintaksisi

SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;

Eslatma: Natijalar to‘plamidagi ustun nomlari odatda birinchi SELECT buyrug‘idagi ustun nomlariga teng bo‘ladi.


Demo ma’lumotlar bazasi

Quyida tanlanma "Customers" jadvali keltirilgan:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

Va tanlanma "Suppliers" jadvali:

SupplierID SupplierName ContactName Address City PostalCode Country
1 Exotic Liquid Charlotte Cooper 49 Gilbert St. London EC1 4SD UK
2 New Orleans Cajun Delights Shelley Burke P.O. Box 78934 New Orleans 70117 USA
3 Grandma Kelly’s Homestead Regina Murphy 707 Oxford Rd. Ann Arbor 48104 USA


SQL UNION misoli

Quyidagi SQL UNIQUE (alohida) mamlakatlar FROM "Customers" va "Suppliers" jadvallarini qaytaradi:

Misol

SELECT Country FROM Customers
UNION
SELECT Country FROM Suppliers
ORDER BY Country;
O‘zingiz sinab ko‘ring »

Eslatma: Agar ba’zi mijozlar yoki yetkazib beruvchilar bir xil mamlakatdan bo‘lsa, har bir mamlakat faqat bir marta chiqariladi, chunki UNION faqat turli qiymatlarni tanlaydi. Takroriy qiymatlarni ham tanlash uchun UNION ALL dan foydalaning (qarang: UNION ALL)!


WHERE bilan SQL UNION

Bu yerda "Customers" va "Suppliers" jadvallaridan faqat noyob Germaniya shaharlarini qaytarish uchun WHERE bandini qo‘shamiz:

Misol

SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;
O‘zingiz sinab ko‘ring »

Yana bir UNION misoli

Quyidagi SQL ro‘yxati barcha mijozlar va Suppliers:

Misol

SELECT 'Customer' AS Type, ContactName, City, Country
FROM Customers
UNION
SELECT 'Supplier', ContactName, City, Country
FROM Suppliers;
O‘zingiz sinab ko‘ring »

Yuqoridagi "AS Type" ga e’tibor bering - bu taxallus. Taxalluslar ustunga vaqtinchalik nom berish uchun ishlatiladi. Shunday qilib, biz bu yerda "Type" nomli vaqtinchalik ustun yaratdik; u aloqa qiluvchi shaxs "Customer" yoki "Supplier" ekanini ko‘rsatadi.


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!