Oversigt :i denne øvelse lærer du, hvordan du bruger SQLite INTERSECT
operatør.
Introduktion til SQLite INTERSECT
operatør
SQLite INTERSECT
operator sammenligner resultatsættene af to forespørgsler og returnerer forskellige rækker, der er output fra begge forespørgsler.
Det følgende illustrerer syntaksen for INTERSECT
operatør:
SELECT select_list1
FROM table1
INTERSECT
SELECT select_list2
FROM table2
Code language: SQL (Structured Query Language) (sql)
De grundlæggende regler for at kombinere resultatsættene af to forespørgsler er som følger:
- For det første skal antallet og rækkefølgen af kolonnerne i alle forespørgsler være den samme.
- For det andet skal datatyperne være sammenlignelige.
Til demonstrationen vil vi oprette to tabeller t1
og t2
og indsæt nogle data i begge:
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 man bruger INTERSECT
operatør for at sammenligne resultatsæt af to forespørgsler:
SELECT v1
FROM t1
INTERSECT
SELECT v2
FROM t2;
Code language: SQL (Structured Query Language) (sql)
Her er outputtet:
Det følgende billede illustrerer INTERSECT
operation:
SQLite INTERSECT
eksempel
Til demonstrationen vil vi bruge customers
og invoices
tabeller fra eksempeldatabasen.
Følgende erklæring finder kunder, der har fakturaer:
SELECT CustomerId
FROM customers
INTERSECT
SELECT CustomerId
FROM invoices
ORDER BY CustomerId;
Code language: SQL (Structured Query Language) (sql)
Følgende billede viser det delvise output:
I denne øvelse har du lært, hvordan du bruger SQLite INTERSECT
operator til at sammenligne to forespørgsler og returnere adskilte rækker, der udlæses af begge forespørgsler.