PostgreSQL Unire, Unire TOATE cu Exemple
โก Rezumat inteligent
PostgreSQL UNION combinฤ rezultatele a douฤ sau mai multe instrucศiuni SELECT รฎntr-un singur set de rezultate ศi eliminฤ rรขndurile duplicate, รฎn timp ce UNION ALL pฤstreazฤ fiecare rรขnd, oferind o opศiune mai rapidฤ atunci cรขnd duplicatele nu conteazฤ.

Ce Este PostgreSQL Uniune?
PostgreSQL Operatorul UNION este folosit pentru a combina seturi de rezultate din mai multe instrucศiuni SELECT รฎntr-un singur set de rezultate. Orice rรขnduri duplicate din rezultatele instrucศiunilor SELECT sunt eliminate. Operatorul UNION lucreazฤ รฎn douฤ condiศii:
- Interogฤrile SELECT trebuie sฤ returneze acelaศi numฤr de coloane.
- Tipurile de date ale tuturor coloanelor corespunzฤtoare trebuie sฤ fie compatibile.
Operatorul UNION este utilizat รฎn mod normal pentru a combina date din tabele รฎnrudite care nu au fost normalizate perfect.
Sintaxฤ
SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)] UNION SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)];
Iatฤ o explicaศie pentru parametrii de mai sus:
Expresia_1, expresia_2, โฆ expresia_n sunt calculele sau coloanele pe care trebuie sฤ le regฤsiศi.
Tabelele sunt tabelele din care trebuie sฤ recuperaศi รฎnregistrฤrile.
Condiศia(ele) WHERE sunt condiศiile care trebuie รฎndeplinite pentru ca รฎnregistrฤrile sฤ fie recuperate.
Notฤ: รntrucรขt operatorul UNION nu returneazฤ duplicate, utilizarea operatorului UNION DISTINCT nu va avea niciun impact asupra rezultatelor.
PostgreSQL Uniune
Operatorul UNION eliminฤ duplicatele, รฎn acelaศi mod รฎn care SELECTARE DISTINCT face. Sฤ demonstrฤm acest lucru. Avem o bazฤ de date numitฤ Demo cu urmฤtoarele tabele:
Carte:
Preศ:
Sฤ rulฤm urmฤtoarea comandฤ:
SELECT id FROM Book UNION SELECT id FROM Price;
Comanda va returna urmฤtoarele:
Coloana ID apare atรขt รฎn โโcarte, cรขt ศi รฎn tabelul de preศuri. Cu toate acestea, apare o singurฤ datฤ รฎn rezultat. Motivul este cฤ PostgreSQL Operatorul UNION nu returneazฤ duplicate.
PostgreSQL Unirea Toate
Acest operator combinฤ seturi de rezultate din mai multe instrucศiuni SELECT fฤrฤ a elimina duplicatele. Operatorul solicitฤ ca fiecare instrucศiune SELECT sฤ aibฤ un numฤr similar de cรขmpuri รฎn seturi de rezultate de tipuri de date similare.
Sintaxฤ:
SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)] UNION ALL SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)];
Iatฤ o explicaศie pentru parametrii de mai sus:
Expresia_1, expresia_2, โฆ expresia_n sunt calculele sau coloanele pe care trebuie sฤ le regฤsiศi.
Tabelele sunt tabelele din care trebuie sฤ recuperaศi รฎnregistrฤrile.
Condiศia(ele) WHERE sunt condiศiile care trebuie รฎndeplinite pentru ca รฎnregistrฤrile sฤ fie recuperate.
Notฤ: Ambele instrucศiuni SELECT trebuie sฤ aibฤ un numฤr egal de expresii.
Vom folosi urmฤtoarele tabele:
Carte:
Preศ:
Rulaศi urmฤtoarea comandฤ:
SELECT id FROM Book UNION ALL SELECT id FROM price;
Ar trebui sฤ returneze urmฤtoarele:
Dublatele nu au fost eliminate.
COMANDA DE
PostgreSQL Operatorul UNION poate fi folosit รฎmpreunฤ cu clauza ORDER BY pentru a ordona rezultatele interogฤrii. Pentru a demonstra acest lucru, vom folosi urmฤtoarele tabele:
Preศ:
Preศ 2:
Iatฤ comanda care demonstreazฤ cum se utilizeazฤ operatorul UNION รฎmpreunฤ cu clauza ORDER BY:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price;
Comanda va returna urmฤtoarele:
รnregistrฤrile au fost ordonate dupฤ coloana preศ. Clauza ordoneazฤ รฎn mod implicit รฎnregistrฤrile รฎn ordine crescฤtoare. Pentru a le ordona รฎn ordine descrescฤtoare, adฤugaศi clauza DESC aศa cum se aratฤ mai jos:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price DESC;
Comanda va returna urmฤtoarele:
รnregistrฤrile au fost ordonate pe baza coloanei de preศ รฎn ordine descrescฤtoare.
Cรขnd se foloseศte Union ศi cรขnd se foloseศte Union All?
Foloseศte operatorul UNION atunci cรขnd ai mai multe tabele cu o structurฤ similarฤ, dar divizate dintr-un anumit motiv. Este util atunci cรขnd trebuie sฤ elimini sau sฤ elimini รฎnregistrฤri duplicate.
Utilizaศi operatorul UNION ALL atunci cรขnd nu trebuie sฤ eliminaศi sau sฤ eliminaศi รฎnregistrฤri duplicate.
Folosind pgAdmin
Acum sฤ vedem cum sunt efectuate toate cele trei acศiuni folosind pgAdmin.
Instrucศiuni de utilizare PostgreSQL Unirea folosind pgAdmin
Mai jos este un proces pas cu pas despre cum se utilizeazฤ PostgreSQL UNION prin pgAdmin:
Pas 1) Conectaศi-vฤ la contul dvs. pgAdmin.
Pas 2) Din bara de navigare din stรขnga, faceศi clic pe Baze de date, apoi pe Demo.
Pas 3) Introduceศi interogarea รฎn editorul de interogฤri:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price DESC;
Pas 4) Faceศi clic pe butonul Execute.
Ar trebui sฤ returneze urmฤtoarele:
Unirea Toate
Pas 1) Conectaศi-vฤ la contul dvs. pgAdmin.
Pas 2) Din bara de navigare din stรขnga, faceศi clic pe Baze de date, apoi pe Demo.
Pas 3) Introduceศi interogarea รฎn editorul de interogฤri:
SELECT id FROM Book UNION ALL SELECT id FROM price;
Pas 4) Faceศi clic pe butonul Execute.
Ar trebui sฤ returneze urmฤtoarele:
COMANDA DE
Operatorul UNION ALL poate fi combinat cu clauza ORDER BY pentru a ordona rezultatele รฎn setul de rezultate. De exemplu:
SELECT id FROM Book UNION ALL SELECT id FROM price ORDER BY id;
Comanda va returna urmฤtoarele:
Rezultatele au fost ordonate.
Descฤrcaศi baza de date folositฤ รฎn acest tutorial

















