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

















