View Categories

SQL Union

4 min read

The SQL UNION Operator – SQL Нэгтгэгч Оператор #

The UNION operator is used to combine the result-set of two or more SELECT statements.

UNION оператор нь хоёр буюу түүнээс олон SELECT өгүүлбэрийн үр дүнгийн багцыг нэгтгэхэд ашиглагддаг.

  • Every SELECT statement within UNION must have the same number of columns

UNION-д орсон бүх SELECT өгүүлбэр нь ижил тооны баганатай байх ёстой

  • The columns must also have similar data types

Баганууд нь мөн ижил төрлийн өгөгдөлтэй байх ёстой

  • The columns in every SELECT statement must also be in the same order

SELECT өгүүлбэр дэх бүх баганууд ижил дарааллаар байх ёстой

UNION Syntax – UNION дүрэм #

class="sqlkeywordcolor">SELECT
column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
 
class="sqlkeywordcolor">SELECT
багана_нэр(нүүд) FROM хүснэгт1
UNION
SELECT хүснэгт_нэр(нүүд) FROM хүснэгт2;
 

UNION ALL Syntax – UNION ALL дүрэм #

The UNION operator selects only distinct values by default. To allow duplicate values, use UNION ALL:

UNION операторыг ашиглавал зөвхөн давтагдахгүй утгуудыг сонгодог. Давхардуулсан утгуудыг хэрэглэхийн тулд UNION ALL-ийг ашиглана:

SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;
 
SELECT багана_нэр(нүүд) FROM хүснэгт1
UNION ALL
SELECT багана_нэр(нүүд) FROM хүснэгт2;
 

Note: The column names in the result-set are usually equal to the column names in the first SELECT statement.

Тэмдэглэл: Үр дүнд гарах баганын нэрс нь ихэвчлэн эхний SELECT өгүүлбэрийн баганын нэртэй ижил байдаг.


Demo Database – Жишээ мэдээллийн сан #

Below is a selection from the “Customers” table:

Доорх “Харилцагчид” хүснэгтийн хэсгээс жишээ болгож авсан:

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

And a selection from the “Suppliers” table:

“Нийлүүлэгчид” хүснэгтийн хэсгийг бас:

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 Example – SQL UNION жишээ #

The following SQL statement returns the cities (only distinct values) from both the “Customers” and the “Suppliers” table:

Доорх SQL өгүүлбэр нь “Харилцагчид” болон “Нийлүүлэгчид” хүснэгтээс хотуудыг (зөвхөн давтагдахгүй утгуудыг) буцаана:

Example – Жишээ #

SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City;

Note: If some customers or suppliers have the same city, each city will only be listed once, because UNION selects only distinct values. Use UNION ALL to also select duplicate values!

Тэмдэглэл: Хэрэв зарим харилцагчид эсвэл нийлүүлэгчид ижил хоттой байвал, хот тус бүр зөвхөн нэг удаа жагсаагдах болно, учир нь UNION зөвхөн давтагдахгүй утгуудыг сонгоно. UNION ALL-г ашиглан давтагдах утгуудыг мөн сонгох боломжтой!


SQL UNION ALL Example – SQL UNION ALL жишээ #

The following SQL statement returns the cities (duplicate values also) from both the “Customers” and the “Suppliers” table:

Доорх SQL өгүүлбэр нь “Харилцагчид” болон “Нийлүүлэгчид” хүснэгтээс хотуудыг (давтагдсан утгуудыг мөн) буцаана:

Example – Жишээ #

SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;

SQL UNION With WHERE – WHERE нөхцөлтэй SQL UNION #

The following SQL statement returns the German cities (only distinct values) from both the “Customers” and the “Suppliers” table:

Доорх SQL өгүүлбэр нь “Харилцагчид” болон “Нийлүүлэгчид” хүснэгтээс Германы хотуудыг (зөвхөн давтагдахгүй утгуудыг) буцаана:

Example – Жишээ #

SELECT City, Country FROM Customers
WHERE Country=‘Germany’
UNION
SELECT City, Country FROM Suppliers
WHERE Country=‘Germany’
ORDER BY City;

SQL UNION ALL With WHERE – WHERE нөхцөлтэй SQL UNION ALL #

The following SQL statement returns the German cities (duplicate values also) from both the “Customers” and the “Suppliers” table:

Доорх SQL өгүүлбэр нь “Харилцагчид” болон “Нийлүүлэгчид” хүснэгтээс Германы хотуудыг (давтагдах утгуудыг мөн) буцаана:

Example – Жишээ #

SELECT City, Country FROM Customers
WHERE Country=‘Germany’
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country=‘Germany’
ORDER BY City;

Another UNION Example – Өөр нэг UNION жишээ #

The following SQL statement lists all customers and suppliers:

Доорх SQL өгүүлбэр нь бүх харилцагчид болон нийлүүлэгчдийг жагсаана:

Example – Жишээ #

SELECT ‘Customer’ AS Type, ContactName, City, Country
FROM Customers
UNION
SELECT ‘Supplier’, ContactName, City, Country
FROM Suppliers;

Notice the “AS Type” above – it is an alias. SQL Aliases are used to give a table or a column a temporary name. An alias only exists for the duration of the query. So, here we have created a temporary column named “Type”, that list whether the contact person is a “Customer” or a “Supplier”.

Дээрх “AS Type”-ийг анзаараарай – энэ нь хоч юм. SQL хочнуудыг хүснэгт эсвэл баганад түр нэр өгөхөд ашигладаг. Хоч нь зөвхөн асуулгын хугацаанд л оршино. Тиймээс, энд бид “Төрөл” нэртэй түр багана үүсгэсэн бөгөөд энэ нь холбогдох хүмүүсийг “Харилцагчид” эсвэл “Нийлүүлэгчид” эсэхийг жагсаана.

Powered by BetterDocs

Leave a Reply