SQLITE WEWNĘTRZEM

SQLITE WEWNĘTRZEM
„Wewnętrzne polecenie łączenia w zapytaniach SQLite wyodrębnia wszystkie wpisy z obu określonych tabel, aby wyświetlić się w wyniku, a zatem, jeśli oba rekordy spełniają wymagania polecenia. Podczas integracji danych z wielu tabel użytkownik musi określić, w jaki sposób wpisy z jednej tabeli można porównać z danymi z innej tabeli. Aby skorelować dane w dwóch tabelach, wykorzystywana jest instrukcja ON. Wewnętrzne polecenie łączenia łączy się razem z rekordami.„W tym artykule zobaczymy, jak użyć polecenia łączenia wewnętrznego w różnych zapytaniach.

Użyj Utwórz zapytanie

Utworzymy pierwszą tabelę o nazwie RND za pomocą zapytania Utwórz. Tutaj RND reprezentuje dział „badań i rozwoju” firmy. Deklarujemy różne atrybuty tej tabeli. Atrybuty pokazują dane różnych pracowników pracujących w dziale RND. Atrybuty tabeli obejmują identyfikator, nazwę, miasto, ranga, wiek i pensja.

Utwórz tabelę RND (
Id Id Integer Key podstawowy,
Tekst nazwy,
Tekst miasta,
Tekst rang,
Wiek numeryczny,
Numeryczne wynagrodzenia
);

Dane wyjściowe pokazuje wykonanie powyższego zapytania bez błędów.

W następnym kroku wykorzystaliśmy zapytanie Utwórz do utworzenia drugiej tabeli, która zostanie nazwana QA. QA oznacza dział zapewniania jakości firmy. Określamy wiele parametrów tabeli. Atrybuty przechowywały informacje o kilku pracownikach w dziale QA. Atrybuty mają różne typy danych. Identyfikator atrybutów ma typ danych liczb całkowitych, nazwa kolumn, miasto i rangę mają typ danych tekstowych, a atrybuty wiek i wynagrodzenie mają liczbą typu danych.

Utwórz tabelę QA (
Id Id Integer Key podstawowy,
Tekst nazwy,
Tekst miasta,
Tekst rang,
Wiek numeryczny,
Numeryczne wynagrodzenia
);

Z powodzeniem stworzyliśmy tabelę QA.

Użyj zapytań Insert

Po utworzeniu tabel musimy teraz wstawić wartości w kolumnach tabeli. Najpierw zastosowaliśmy zapytanie do wstawienia, aby wstawić wartości w tabeli RND.

Wstaw do RND (ID, Nazwa, miasto, ranga, wiek, wynagrodzenie) (503, „Saim”, „Karaczi”, „Manager”, „32”, „90000”),
(697, „Shazain”, „Islamabad”, „CEO”, „42”, „180000”),
(346, „Zain”, „SargoDha”, „Developer”, „35”, „70000”),
(767, „Daniyal”, „Lahore”, „Operational Manager”, „40”, „10000”);

Wynik pokazuje, że zapytanie do wkładania wartości do tabeli „RND” jest wykonywane bez żadnego błędu.

Wykorzystaliśmy również zapytanie do dodania danych wszystkich kolumn tabeli jakości. Dane obejmują kolumny „ID”, „Nazwa”, „City”, „Rank”, „Age” i „Wynagrodzenie”.

Wstaw do QA (ID, Nazwa, miasto, ranga, wiek, wynagrodzenie) (218, „Saim”, „Multan”, „Financial Officer”, „32”, „50000”),
(490, „Abdan”, „Islamabad”, „Operacyjny oficer”, „40”, „80000”),
(601, „Zubair”, „Rawalpindi”, „QA Operator”, „38”, „70000”),
(845, „Usama”, „Peshawar”, „Operational Manager”, „45”, „120000”);

Skutecznie wstawialiśmy dane do tabeli QA, jak pokazano na rysunku.

Użyj zapytania Select

Na tym etapie chcemy pobrać dane z kolumn tabeli RND. Gdy używamy SELECT wraz z symbolem *, zwracane są pełne dane wymaganej tabeli. W wybranym zapytaniu czasami wspominamy nazwy kolumn, z których chcemy pobrać dane.

>> Wybierz * z RND;

Łatwo odzyskaliśmy dane za pomocą zapytania wyboru.

Teraz stosujemy zapytanie do tabeli kontroli jakości.

>> Wybierz * z QA;

Zapytanie zwraca dane 4 różnych pracowników. Gdy używamy * symbolu w zapytaniu, więc otrzymujemy wszystkie informacje o pracownikach.

Użyj klauzuli wewnętrznej

Wybierzemy dowolne kolumny, które chcemy z dwóch określonych tabel w zapytaniu Wybierz. Instrukcja łączenia wewnętrznego jest dodawana tuż po tym, jak instrukcja odnosi się do pierwszego zestawu danych. Następnie jest wykorzystywany do dostarczenia wymogu połączenia. Można zapewnić pseudonim dla skierowanych tabel. Możemy pominąć wewnętrzny termin i po prostu wprowadź dołącz.

Połączymy dwie tabele o nazwie „RND” i „QA”, używając nazwy atrybutu w kolejnej ilustracji, aby uzyskać identyfikator i ranga dla każdego pracownika w obu działach:

WYBIERAĆ
Rnd.Id, rnd.Ranga,
QA.ID, QA.Ranga
Z rnd
Wewnętrzny dołącz do QA na RND.Nazwa = QA.Nazwa;

Wewnętrzne połączenie zwraca dane pracowników, które pasują do wymogu „RND.Nazwa = QA.Nazwa ”zarówno z tabel PND, jak i QA. Niezrównane wpisy zostaną odrzucone i wykluczone z wyniku. W rezultacie powyższe zapytanie zwraca tylko dwóch pracowników z działów RND i QA.

W tym przypadku zastosujemy instrukcję Wewnętrznego połączenia do kolumny „Rank”. Oznacza to, że chcemy uzyskać dane (id, miasto i wynagrodzenie) tych pracowników, których ranga jest podobna zarówno w tabelach RND, jak i QA.

WYBIERAĆ
Rnd.Id, rnd.Miasto, rnd.Wynagrodzenie,
QA.ID, QA.Miasto, QA.Wynagrodzenie
Z rnd
Wewnętrzny dołącz do QA na RND.Ranga = QA.Ranga;

ID 767 z tabeli RND i ID 845 z tabeli QA mają ten sam rang lub menedżer operacyjny. Tak więc wynikowa tabela zawiera dane tylko tych pracowników.

Użyj Wewnętrznego połączenia za pomocą klauzuli

Wewnętrzne połączenie może być wyrażone za pomocą słowa kluczowego „Używanie” w celu zmniejszenia redundancji. Kiedy kolumny tabeli, które chcemy zbadać w stanie połączenia, mają prawie podobną nazwę, wykorzystamy „Wewnętrzne połączenie wraz z użyciem klauzuli”. W tego rodzaju sytuacjach nie ma potrzeby ponownie używania klauzuli ON; Po prostu wspomnij o atrybucie po klauzuli za pomocą.

W tym przykładzie połączymy dwie tabele, RND i QA, z atrybutem miasta, aby odzyskać identyfikator, nazwę i pensję dla każdego pracownika:

WYBIERAĆ
Rnd.Id, rnd.Nazwa, rnd.Wynagrodzenie,
QA.ID, QA.Imię, QA.Wynagrodzenie
Z rnd
Wewnętrzny dołącz do QA przy użyciu (miasto);

SQLite dynamicznie wskazuje warunek połączenia i dopasowuje miasto z tabel RND i QA.

W tym scenariuszu wykorzystamy klauzulę za pomocą polecenia łączenia wewnętrznego do kolumny „Wiek.”Zarówno w bazach danych RND, jak i QA chcemy odzyskać zapisy tych pracowników, którzy mają ten sam wiek.

Nie określilibyśmy warunku połączenia z „Wewnętrznym dołączeniem”; Po prostu deklarujemy kolumnę łączenia, która jest identyczna z dwoma wymaganymi tabelami.

WYBIERAĆ
Rnd.Nazwa, rnd.Wynagrodzenie, rnd.Ranga,
QA.Imię, QA.Wynagrodzenie, QA.Ranga
Z rnd
Wewnętrzne połączenie QA przy użyciu (wiek);

Wyjście zapytania pokazano poniżej.

Użyj Wewnętrznego połączenia z klauzulą ​​Where

Wykorzystujemy również klauzulę łączenia wewnętrznego z klauzulą ​​Where.

Klauzula ON, w tym przypadku, stwierdza, że ​​kolumna pensji w tabelach RND i QA musiałaby być podobną wartością. Tak więc dlatego, że wymaganie polecenia ON Pared, jeśli wynagrodzenie nie będzie obecne zarówno w tabelach „RND, jak i QA”, rekord nie wyświetli się na wyjściu. Tylko pracownicy o randze dewelopera będą mogli zaangażować się w klauzulę łączenia.

WYBIERAĆ
Rnd.Nazwa, rnd.Miasto, rnd.Ranga,
QA.Imię, QA.Miasto, QA.Ranga
Z rnd
Wewnętrzne dołączenie QA
Na rnd.Wynagrodzenie = QA.Wynagrodzenie
Gdzie rnd.Rank = „programista”;

Pracownicy, którzy nie spełniają warunku wymienionego w powyższym zapytaniu, nie są uwzględnione w tej tabeli. Tylko dwóch pracowników ma tę samą pensję.

Wniosek

W tym artykule rozmawialiśmy o użyciu polecenia wewnętrznego połączenia w zapytaniach SQLite. Za pomocą kilku przykładów klauzuli wewnętrznej łączenia, ten artykuł zilustrował nam podstawową strukturę, kiedy i jak zastosować klauzulę łączenia wewnętrznego z innymi różnymi klauzulami. Instrukcja łączenia wewnętrznego jest używana do zapytania o wartości z kilku tabel. Wewnętrzne polecenie połączenia łączy atrybuty związane z tabelami.