SQL Union - изчерпателно ръководство за оператора UNION



Тази статия е задълбочено ръководство за това как да използвате оператора SQL UNION. Тази статия разглежда разликите между UNION и UNION ALL с примери.

Докато обработваме данни в бази данни, често сме склонни да използваме зададените оператори в SQL , за извличане на данни според нашите изисквания чрез комбиниране на две или повече инструкции SELECT. В тази статия за SQL UNION ще обсъдя оператора UNION, използван за извличане на данни в следната последователност:

Нека започнем!





Какво представлява операторът SQL UNION?

Както подсказва името, този оператор / клауза се използва за комбиниране на резултатите от две или повече инструкции SELECT. Тук всеки оператор SELECT, използван в оператора UNION, трябва да има еднакъв брой колони в същия ред. Също така всички колони, присъстващи в операторите SELECT, трябва да имат подобни типове данни.

Клаузата UNION дава само уникални стойности като изход. За всеки случай искате дублирани стойности, тогава трябва да използвате клаузата UNION ALL.



Продължавайки в тази статия за SQL UNION, нека разберем синтаксиса.

Синтаксис на SQL UNION

Синтаксис на UNION

ИЗБЕРЕТЕ Колона1, Колона2, Колона3, ..., КолонаN ОТ Таблица1 СЪЮЗ ИЗБЕРЕТЕ Колона1, Колона2, Колона3, ..., КолонаN ОТ Таблица2

UNION ALL Синтаксис

ИЗБЕРЕТЕ Колона1, Колона2, Колона3, ..., КолонаN ОТ Таблица1 СЪЮЗ ВСИЧКИ ИЗБОРИ Колона1, Колона2, Колона3, ..., КолонаN ОТ Таблица2

Продължавайки в тази статия, нека разберем разликите между UNION и UNION ALL.

Разлики между SQL UNION и UNION ALL



СЪЮЗ СЪЮЗ ВСИЧКИ
Комбинира два или повече резултата и не запазва дублираните стойности.Комбинира два или повече резултата и запазва дублиращите се стойности.
 Синтаксис: СЪЮЗ
 Синтаксис: СЪЮЗ ВСИЧКИ
SQL UNION -SQL UNION -Edureka

След това, в тази статия за SQL UNION, нека разберем различните начини за използване на този оператор.

Примери за SQL UNION и UNION ALL

За ваше по-добро разбиране ще разгледам следващите таблици, за да ви покажа различни примери.

Таблица на служителите

EmpID Име EmpAge Град Пощенски код Страна
единЕма2. 3Берлин12109Германия
2Рахул26Мумбай400015Индия
3Айра24Ню Йорк10014ИЗПОЛЗВА
4Джон32ЛондонE1 7AEВеликобритания
5Дерек29Ню Йорк10012ИЗПОЛЗВА

Таблица с проекти

ProjectID Име Работни дни Град Пощенски код Страна
единПроект 110Берлин12109Германия
2Проект 27Мумбай400015Индия
3Проект 3двайсетДелхи110006Индия
4Проект 4петнадесетМумбай400015Индия
5Проект 528Берлин12109Германия

Нека започнем с примери.

Примери за SQL UNION

Пример за оператор UNION

Напишете заявка за извличане на различни градове от таблицата Служители и проекти.

ИЗБЕРЕТЕ Град ОТ Служители СЪЮЗ ИЗБЕРЕТЕ Град ОТ ПРОЕКТИ ПОРЪЧКА ПО Град

Изход:

Град

Берлин

Делхи

Лондон

jenkins срещу куклен срещу готвач

Мумбай

Ню Йорк

UNION ALL Пример за оператор

Напишете заявка за извличане на градове от таблицата Служители и проекти. Тук трябва да се включат дублиращи се стойности.

ИЗБЕРЕТЕ Град ОТ Служители СЪЮЗ ВСИЧКИ ИЗБЕРЕТЕ Град ОТ ПРОЕКТИ ПОРЪЧКА ПО ГРАД

Изход:

Град

Берлин

Берлин

Берлин

Делхи

Лондон

функция за сортиране c ++

Мумбай

Мумбай

Мумбай

Ню Йорк

Ню Йорк

След това в тази статия нека разберем как да използваме клаузата UNION с SQL псевдоними.

СЪЮЗ с SQL псевдоними

Използват се псевдоними на SQLза да даде на таблица или колона временно име. И така, нека напишем заявка, за да изброим всички уникални служители и проекти.

ИЗБЕРЕТЕ „Служител“ КАТО тип, име, град, държава ОТ служителите СЪЮЗ ИЗБЕРЕТЕ „проект“, име, град, държава ОТ проекти

Изход:

Тип Име Град Страна
СлужителЕмаБерлинГермания
СлужителРахулМумбайИндия
СлужителАйраНю ЙоркИЗПОЛЗВА
СлужителДжонЛондонВеликобритания
СлужителДерекНю ЙоркИЗПОЛЗВА
ПроектПроект 1БерлинГермания
ПроектПроект 2МумбайИндия
ПроектПроект 3ДелхиИндия
ПроектПроект 4МумбайИндия
ПроектПроект 5БерлинГермания

UNION с клауза WHERE

Напишете заявка за извличане на отделните индийски градове и техните пощенски кодове от таблицата Служители и Проекти.

ИЗБЕРЕТЕ Град, Пощенски Код, Държава ОТ Служители КЪДЕ Държава = 'Индия' СЪЮЗ ИЗБЕРЕТЕ Град, Пощенски Код, Държава ОТ ПРОЕКТИ КЪДЕ Държава = 'Индия' ПОРЪЧКА ПО Град

Изход:

Град Пощенски код Страна
Делхи110006Индия
Мумбай400015Индия

UNION ALL с клауза WHERE

Напишете заявка за извличане на индийски градове и техните пощенски кодове както от таблицата Служители, така и от проекти, където са позволени дублиращи се стойности

ИЗБЕРЕТЕ Град, Пощенски Код, Държава ОТ Служители КЪДЕ Държава = 'Индия' СЪЮЗ ВСИЧКИ ИЗБЕРЕТЕ Град, Пощенски Код, Държава ОТ ПРОЕКТИ КЪДЕ Държава = 'Индия' ПОРЪЧКА ПО Град

Изход:

Град Пощенски код Страна
Делхи110006Индия
Мумбай400015Индия
Мумбай400015Индия
Мумбай400015Индия

Продължавайки напред в тази статия, нека разберем как да използваме клаузите UNION и UNION ALL с JOINS.JOINS в SQL са които се използват за комбиниране на редове от две или повече таблици въз основа на свързана колона между тези таблици.

СЪЮЗ с ПРИСЪЕДИНЯВА

Операторът SQL UNION може да се използва с за извличане на данни от две различни таблици. Ще разгледам следната таблица заедно с таблицата на служителите за примера.

Таблица ProjectDetails

PID Работни дни EmpID CostforProject
единадесет12420000
22.16.335000
3330един60000
4425345000
55двадесет и едноедин50 000
ИЗБЕРЕТЕ EmpID, Име, CostforProject ОТ НАЕМИТЕ НАЛЯВО СЕ ПРИСЪЕДИНЯВАТЕ ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ИЗБЕРЕТЕ EmpID, Име, CostforProject ОТ СЛУЖИТЕЛИ ПРАВО СЕ ПРИСЪЕДИНЕТЕ ProjectDetails ON Служители.EmpID = ProjectDetails.EmpID

Изход:

EmpID Име CostforProject
единЕма60000
единЕма50 000
2РахулНУЛА
3Айра35000
3Айра45000
4Джон20000
5ДерекНУЛА

UNION ALL със JOINS

Напишете заявка за извличане на EmpID, Name и CostforProject от таблицата Служители и ProjectDetails, където са позволени дублиращи се стойности.

ИЗБЕРЕТЕ EmpID, Име, CostforProject ОТ СЛУЖИТЕ НАЛЯВО СЕ ПРИСЪЕДИНЯВАТЕ ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ВСИЧКИ ИЗБЕРЕТЕ EmpID, Име, CostforProject ОТ Служители ПРАВО СЕ ПРИСЪЕДИНЕТЕ ProjectDetails НА Служители.EmpID = ProjectDetails.EmpID

Изход:

EmpID Име CostforProject
единЕма60000
единЕма50 000
2РахулНУЛА
3Айра35000
3Айра45000
4Джон20000
5ДерекНУЛА
4Джон20000
3Айра35000
единЕма60000
3Айра35000
единЕма50 000

С това стигам до края на тази статия за SQL UNION. Надявам се да ви е харесало да прочетете тази статия за SQL UNION. Видяхме различните начини за използване на командите UNION и UNION ALL, които да ви помогнат да пишете заявки. Ако искате да научите повече за MySQL и се запознайте с тази релационна база данни с отворен код, след това разгледайте нашата което се предлага с обучение под ръководството на инструктори на живо и опит в реалния живот на проекти. Това обучение ще ви помогне да разберете MySQL в дълбочина и ще ви помогне да постигнете майсторство по темата.

Имате въпрос към нас? Моля, споменете го в раздела за коментари на „SQL UNION“ и ще се свържа с вас.