SQLite interno unito

SQLite interno unito
“Il comando di join interno nelle query di SQLite estrae tutte le voci da entrambe le tabelle specificate per emergere nell'output e, pertanto, se entrambi i record soddisfano i requisiti del comando on. Quando si integra i dati da più tabelle, un utente deve specificare come le voci da una tabella potrebbero essere confrontate con i dati di un'altra tabella. Per correlare i dati all'interno di due tabelle, l'istruzione ON viene utilizzata. Il comando interno di join si unisce ai record insieme."Vedremo come utilizzare il comando di join interner in diverse domande in questo articolo.

Usa Crea query

Creeremo la prima tabella denominata RND utilizzando una query Crea. Qui RND rappresenta il dipartimento di "ricerca e sviluppo" di un'azienda. Dichiariamo attributi diversi di questa tabella. Gli attributi mostrano i dati di diversi dipendenti che lavorano nel dipartimento RND. Gli attributi della tabella includono ID, nome, città, rango, età e stipendio.

Crea la tabella RND (
Chiave primaria ID integer,
Nome Testo,
Testo della città,
Testo di rango,
Età numerica,
Stipendio numerico
);

L'output mostra l'esecuzione della query sopra senza errori.

Nel passaggio successivo, abbiamo utilizzato una query Crea per creare una seconda tabella, che si chiama QA. Il QA sta per il dipartimento di garanzia della qualità dell'azienda. Specifichiamo i parametri multipli della tabella. Gli attributi hanno archiviato le informazioni su più dipendenti nel dipartimento QA. Gli attributi hanno diversi tipi di dati. L'ID attributo ha un tipo di dati interi, il nome delle colonne, la città e il rango hanno un tipo di dati di testo e gli attributi età e stipendio possiedono un tipo di dati numerici.

Crea la tabella QA (
Chiave primaria ID integer,
Nome Testo,
Testo della città,
Testo di rango,
Età numerica,
Stipendio numerico
);

Abbiamo creato con successo la tabella del QA.

Usa Inserisci query

Dopo aver creato le tabelle, ora dobbiamo inserire i valori nelle colonne della tabella. Quindi, in primo luogo, abbiamo applicato la query di inserto per inserire i valori nella tabella RND.

Inserisci in RND (ID, nome, città, rango, età, stipendio) (503, "saim", "karachi", "manager", "32", "90000"),
(697, "Shazain", "Islamabad", "CEO", "42", "180000"),
(346, "Zain", "Sargodha", "Developer", "35", "70000"),
(767, "Daniyal", "Lahore", "Operational Manager", "40", "10000");

Il risultato mostra che la query per l'inserimento di valori in una tabella "RND" viene eseguita senza alcun errore.

Abbiamo anche utilizzato la query di inserto per aggiungere i dati di tutte le colonne della tabella QA. I dati includono le colonne di "id", "nome", "città", "rango", "età" e "stipendio".

Inserisci in QA (ID, nome, città, rango, età, stipendio) (218, "Saim", "Multan", "Financial Officer", "32", "50000"),
(490, "Abdan", "Islamabad", "Operating Officer", "40", "80000"),
(601, "Zubair", "Rawalpindi", "QA Operator", "38", "70000"),
(845, "Usama", "Peshawar", "Operational Manager", "45", "120000");

Abbiamo effettivamente inserito i dati nella tabella del QA, come mostrato nella figura.

Utilizzare Seleziona query

In questo passaggio, vogliamo recuperare i dati dalle colonne della tabella RND. Quando stiamo utilizzando selezionare insieme al simbolo *, vengono restituiti i dati completi della tabella richiesta. In una query selezionata, a volte menzioneremo i nomi delle colonne da cui vogliamo recuperare i dati.

>> Seleziona * da RND;

Abbiamo facilmente recuperato i dati utilizzando una query selezionata.

Ora applichiamo la query seleziona alla tabella QA.

>> Seleziona * da QA;

La query restituisce i dati di 4 diversi dipendenti. Mentre utilizziamo il simbolo * nella query selezionata, quindi otteniamo tutte le informazioni sui dipendenti.

Usa la clausola di join interiore

Selezioneremo tutte le colonne che desideriamo dalle due tabelle specificate nella query Seleziona. La dichiarazione di join interiore viene aggiunta subito dopo che l'istruzione From si riferisce al primo set di dati. Dopodiché, viene utilizzato per fornire il requisito di join. Potrebbero essere forniti alias per tabelle di riferimento. Possiamo omettere il termine interiore e semplicemente entrare.

Colletteremo le due tabelle denominate "RND" e "QA" usando il nome dell'attributo nell'illustrazione successiva per ottenere l'ID e il grado per ogni dipendente in entrambi i dipartimenti:

SELEZIONARE
Rnd.Id, rnd.Rango,
QA.Id, qa.Rango
Da rnd
INNER UNIIRE QA su RND.Nome = qa.Nome;

Il join interno restituisce i dati dei dipendenti che soddisfano il requisito “RND.Nome = qa.Nome "dalle tabelle PND e QA. Le voci senza pari verrebbero respinte ed escluse dal risultato. Di conseguenza, la query di cui sopra restituisce solo due dipendenti dai dipartimenti RND e QA.

In questo caso, applicheremo la dichiarazione di join interner alla colonna "Rank". Significa che vogliamo ottenere i dati (id, città e stipendio) di quei dipendenti il ​​cui rango è simile nelle tabelle RND e QA.

SELEZIONARE
Rnd.Id, rnd.Città, rnd.Stipendio,
QA.Id, qa.Città, QA.Stipendio
Da rnd
INNER UNIIRE QA su RND.Rank = QA.Rango;

ID 767 dalla tabella RND e ID 845 dalla tabella QA hanno lo stesso rango o il gestore operativo. Quindi la tabella risultante contiene dati di solo questi dipendenti.

Usa un join interiore con l'utilizzo della clausola

Il join interno potrebbe essere espresso con la parola chiave "usando" per ridurre la ridondanza. Quando le colonne della tabella vogliamo esaminare nella condizione di join hanno quasi un nome simile, utilizzeremo "join interiore insieme all'utilizzo della clausola". In questi tipi di situazioni, non è necessario utilizzare nuovamente la clausola; Basta menzionare l'attributo dopo la clausola di utilizzo.

In questo esempio collegheremo le due tabelle, RND e QA, con l'attributo della città per recuperare l'ID, il nome e lo stipendio per ogni dipendente:

SELEZIONARE
Rnd.Id, rnd.Nome, rnd.Stipendio,
QA.Id, qa.Nome, qa.Stipendio
Da rnd
INNER UNIRE QA Uso (Città);

SQLite indica dinamicamente la condizione di join e abbina la città dai tavoli RND e QA.

In questo scenario, utilizzeremo la clausola usando per eseguire un comando di join interno alla colonna “Age."Nei database RND e QA, vogliamo recuperare i registri di quei dipendenti che hanno la stessa età.

Non specifichiamo una condizione di join con "INNER JOIN UTILIZZARE"; Dichiariamo semplicemente la colonna di join identica alle due tabelle richieste.

SELEZIONARE
Rnd.Nome, rnd.Stipendio, rnd.Rango,
QA.Nome, qa.Stipendio, QA.Rango
Da rnd
INNERIRE QA Uso di QA usando (età);

L'output della query è mostrata di seguito.

Usa un join interiore con la clausola

Utilizziamo anche la clausola di join interner con la clausola.

La clausola On, in questo caso, afferma che la colonna salariale nelle tabelle RND e QA dovrebbe essere un valore simile. Quindi, poiché il requisito del comando On non è riuscito, se lo stipendio non sarà presente sia nelle tabelle "RND che QA", il record non viene visualizzato nell'output. Solo i dipendenti con il grado di sviluppatore saranno in grado di coinvolgere nella clausola di join.

SELEZIONARE
Rnd.Nome, rnd.Città, rnd.Rango,
QA.Nome, qa.Città, QA.Rango
Da rnd
Unisciti interno QA
Su rnd.Stipendio = QA.Stipendio
Dove rnd.Rank = "sviluppatore";

I dipendenti che non soddisfano la condizione menzionata nella query sopra non sono inclusi in questa tabella. Solo due dipendenti hanno lo stesso stipendio.

Conclusione

In questo articolo, abbiamo parlato dell'utilizzo del comando di join interner nelle query SQLite. Con l'aiuto di diversi esempi della clausola di join interiore, questo articolo ci ha illustrato la struttura di base, quando e come utilizzare la clausola di join interiore con altre diverse clausole. L'istruzione di join interiore viene utilizzata per interrogare i valori di diverse tabelle. Il comando di join interner unisce gli attributi delle tabelle associate.