Oversigt :i denne vejledning lærer du, hvordan du bruger SQLite EXCEPT
operatør.
Introduktion til SQLite EXCEPT
operatør
SQLite EXCEPT
operator sammenligner resultatsættene af to forespørgsler og returnerer forskellige rækker fra den venstre forespørgsel, som ikke udlæses af den højre forespørgsel.
Det følgende viser syntaksen for EXCEPT
operatør:
SELECT select_list1
FROM table1
EXCEPT
SELECT select_list2
FROM table2
Code language: SQL (Structured Query Language) (sql)
Denne forespørgsel skal overholde følgende regler:
- For det første skal antallet af kolonner i de udvalgte lister for begge forespørgsler være det samme.
- For det andet skal rækkefølgen af kolonnerne og deres typer være sammenlignelige.
Følgende udsagn opretter to tabeller t1
og t2
og indsæt nogle data i begge tabeller:
CREATE TABLE t1(
v1 INT
);
INSERT INTO t1(v1)
VALUES(1),(2),(3);
CREATE TABLE t2(
v2 INT
);
INSERT INTO t2(v2)
VALUES(2),(3),(4);
Code language: SQL (Structured Query Language) (sql)
Følgende erklæring illustrerer, hvordan du bruger EXCEPT
operatør for at sammenligne resultatsæt af to forespørgsler:
SELECT v1
FROM t1
EXCEPT
SELECT v2
FROM t2;
Code language: SQL (Structured Query Language) (sql)
Udgangen er 1.
Det følgende billede illustrerer EXCEPT
operation:
SQLite EXCEPT
eksempler
Vi vil bruge artists
og albums
tabeller fra prøvedatabasen til demonstrationen.
Følgende erklæring finder kunstner-id'er for kunstnere, der ikke har noget album i albums
tabel:
SELECT ArtistId
FROM artists
EXCEPT
SELECT ArtistId
FROM albums;
Code language: SQL (Structured Query Language) (sql)
Udgangen er som følger:
I denne øvelse har du lært, hvordan du bruger SQLite EXCEPT
operator til at sammenligne to forespørgsler og returnere unikke rækker fra den venstre forespørgsel, som ikke er outputtet af den højre forespørgsel.