SQL | Operator MINUS

SQL | Operator MINUS

Operator MINUS se uporablja z dvema SELECT izjave, ki vrnejo samo tiste vrstice iz prve poizvedbe, ki niso prisotne v drugi. Filtrira vse skupne vrstice in obdrži samo edinstvene vrstice iz prvega niza rezultatov.

Slikovna predstavitev :

sql-minus

Kot lahko vidite, bo v zgornjem diagramu operater MINUS vrnil samo tiste vrstice, ki so prisotne v nizu rezultatov iz Tabele1 in niso prisotne v nizu rezultatov Tabele2.

Sintaksa:

 SELECT column1 column2 ... columnN   
FROM table_name1
[WHERE condition]
MINUS
SELECT column1 column2 ... columnN
FROM table_name2
[WHERE condition];

V zgornji sintaksi

  • Prvi IZBERI: Pridobi določene stolpce (stolpec1 stolpec2 ... stolpecN) iz ime_tabele1, ki so po izbiri filtrirani s pogojem WHERE.
  • MINUS: Operator MINUS vrne vrstice iz prve poizvedbe, ki niso prisotne v drugi poizvedbi.
  • Drugi SELECT: Pridobi iste stolpce iz table_name2, po izbiri filtrirane s pogojem WHERE.
  • Izhod: Rezultat vključuje vrstice iz table_name1, ki ne obstajajo v table_name2. Dvojniki so odstranjeni iz končnega rezultata.

Mize :

Tabela 1

Ime

Naslov

Starost

Ocena

Hudo

Delhi

20

A

Gaurav

Jaipur

21

B

Vadite

Mumbai

21

A

Dhanraj

Kolkata

22

B

Tabela 2

Ime

Starost

Telefon

Ocena

Akaša

20

XXXXXXXXX

A

Dheeraj

21

XXXXXXXXX

B

Vaibhav

21

XXXXXXXXX

A

Dhanraj

22

XXXXXXXXX

B

Poizvedbe :

 SELECT NAME AGE GRADE   
FROM Table1
MINUS
SELECT NAME AGE GRADE
FROM Table2;

Izhod:

Ime

Starost

Ocena

Hudo

20

A

Gaurav

21

B

Vadite

21

A

V tej poizvedbi:

  • Vrne samo vrstice, ki so edinstvene za tabelo1.
  • Če je zadnja vrstica v obeh tabelah enaka, je izključena iz rezultata. Tako bodo vrnjene le prve tri vrstice iz tabele 1.

Opomba :

  • Operator MINUS je podprt v Oracle, ni pa podprt v SQL Server ali PostgreSQL.
  • Za te baze podatkov uporabite EXCEPT operater kot alternativa.
Ustvari kviz