СКЛ нам пружа УНИОН оператор који нам омогућава да комбинујемо скупове резултата од два или више СЕЛЕЦТ наредби у један скуп резултата. Постоје три главна типа УНИОН оператора у СКЛ-у: УНИОН, УНИОН АЛЛ и УНИОН ДИСТИНЦТ.
Овај водич истражује ове три врсте УНИОНА и пружа стварне и практичне примере рада са њима.
БЕЛЕШКА: У овом примеру користићемо узорак Сакила базе података у сврху демонстрације. Уверите се да сте га инсталирали пре извршавања ових команди. Можете погледати наш водич о томе да сазнате више.
СКЛ УНИОН Оператор
Као што је поменуто, УНИОН оператор нам омогућава да комбинујемо скуп резултата од два или више наредби за одабир и уклонимо дупле вредности. Синтакса оператора УНИОН је следећа:
СЕЛЕЦТ колона1, колона2, ...
ИЗ табеле1
УНИЈА
СЕЛЕЦТ колона1, колона2, ...
ФРОМ табле2;
У претходном примеру синтаксе користимо наредбе СЕЛЕЦТ за преузимање података из наведених табела. УНИОН оператор затим комбинује два скупа резултата у један скуп. Узмимо пример како то да урадимо користећи табелу актера која је дефинисана у бази података Сакила.
Размотрите следећи пример упита који преузима име и презиме актера из табеле актера и табеле корисника:
СЕЛЕЦТ име, презимеОД глумца
УНИЈА
СЕЛЕЦТ име, презиме
ОД купца; СЕЛЕЦТ име, презиме
ОД глумца
УНИЈА
СЕЛЕЦТ име, презиме
ОД купца;
Претходни упит извлачи име и презиме из табеле актера и купаца и враћа вредности као један резултат.
Пример излаза је следећи:
СКЛ УНИОН АЛЛ Оператор
За разлику од УНИОН оператора који уклања дупликате вредности из скупа резултата, УНИОН оператор враћа све редове табела укључујући дупликате.
Синтакса је следећа:
СЕЛЕЦТ колона1, колона2, ...ИЗ табеле1
УНИОН АЛЛ
СЕЛЕЦТ колона1, колона2, ...
ФРОМ табле2;
Следећи пример бира име и презиме из табела актера и купаца у бази података Сакила:
ОД глумца
УНИОН АЛЛ
СЕЛЕЦТ име, презиме
ОД купца;
Пример излаза је следећи:
СКЛ УНИОН ДИСТИНЦТ оператор
Други тип оператора синдиката је УНИОН ДИСТИНЦТ. Овај оператор је једноставно дупликат оператора УНИОН који обавља сличну акцију.
Синтакса је следећа:
СЕЛЕЦТ колона1, колона2, ...ИЗ табеле1
УНИОН ДИСТИНЦТ
СЕЛЕЦТ колона1, колона2, ...
ФРОМ табле2;
Изрази СЕЛЕЦТ преузимају податке из наведених табела, а оператор УНИОН ДИСТИНЦТ комбинује скупове резултата у један скуп резултата који укључује јединствене редове.
У примеру базе података Сакила, можемо покренути следећу команду:
СЕЛЕЦТ име, презимеОД глумца
УНИОН ДИСТИНЦТ
СЕЛЕЦТ име, презиме
ОД купца;
Ово би требало да врати сличан резултат као УНИОН оператор.
Закључак
Научили смо како да радимо са различитим типовима УНИОН-а у СКЛ-у. Оператор УНИОН комбинује скуп резултата од два или више наредби за одабир и уклања дупле записе. УНИОН АЛЛ обавља сличну акцију, али укључује све дуплиране редове. Коначно, УНИОН ДИСТИНЦТ је идентичан изворном УНИОН оператору.