SQLite Euter Join

SQLite Euter Join
“Il join a sinistra o il join esterno sinistro combina due tavoli. Recupera le voci in base a un requisito soddisfatto in entrambe le tabelle richieste, con righe non corrispondenti ottenibili dalla tabella definita creata appena prima dell'istruzione join.SQLite estrae tutti i dati rilevanti dalla tabella sinistra nella situazione di sinistra o uni esterno. Si abbina anche a questi solo con i nomi dei campi forniti nel requisito della tabella destra. SQLite modifica il valore di ciascuna colonna nella colonna su NULL se la tabella sinistra non corrisponde. In questo articolo, esploreremo di più su SQLite Outer Join."

Crea una tabella

Dobbiamo creare due tabelle separate e eseguiremo diverse domande.

Quindi, dopo aver creato il database, dobbiamo creare la prima tabella. Abbiamo utilizzato la query "Crea" per creare una tabella. La tabella creata in questo passaggio è "Cliente."Nella query di" Crea ", definiamo i nomi delle colonne e i loro tipi di dati. La tabella "Cliente" ha 6 colonne (C_ID, NAME, CITTÀ, Acquistate_Product, Price e Acquista_Date). Questi attributi hanno tipi di dati, tra cui intero, testo e numerico.

Crea un cliente table (
C_ID Integer Key primario,
Nome Testo,
Testo della città,
Testo acquistato_product,
Prezzo numerico,
Acquista_date numerico
);

La query di "create" viene eseguita correttamente.

Ora è il momento di creare una seconda tabella. Per creare una tabella, abbiamo applicato la query "Crea". "Fornitore" sarebbe la seconda tabella creata in questa fase. Ci sono sei diverse voci, tra cui S_ID, nome, città, prodotto acquistato, prezzo e data di acquisto, nella tabella "Fornitore". I tipi di dati numerici interi, testi e numerici sono alcuni dei tipi di dati disponibili per questi elementi.

Crea fornitore di tabelle (
S_ID intero chiave primaria,
Nome Testo,
Testo della città,
Testo fornito_product,
Prezzo numerico,
Supply_Date Numeric
);

L'output dimostra che la query sopra è stata eseguita senza errori.

Inserire i dati

Il prossimo passo è aggiungere valori diversi nelle colonne della tabella “Cliente."

Inserisci in Cliente (C_ID, Nome, City, Acquistate_Product, Price, Acquista_Date)
Valori (93, 'Shayan', 'Karachi', 'LED', '120000', '18/02/2022 '),
(76, "Adeel", "Islamabad", "Washing Machine", "90000", "04/12/2021 "),
(51, "Nasir", "Lahore", "Microwave", "25000", '12/01/2022 '),
(37, 'Mohsin', 'Karachi', 'Laptop', '150000', '23/02/2022 ');

Il risultato indica che la query per l'aggiunta di dati nella tabella "cliente" è stata implementata in modo efficace.

La query di inserto verrà impiegata per inserire il contenuto nella tabella "Fornitore" Tabella. Abbiamo aggiunto i valori di ID, nomi, città, prodotti, prezzi e date di fornitura di diversi fornitori in questa tabella.

Inserisci in Fornitore (S_ID, nome, città, fornito_prodotto, prezzo, fornitura_date)
Valori (02, "Rashid", "Karachi", "DSLR Camera", "160000", "18/01/2022"),
(04, 'Adeel', 'Sargodha', 'Oven', '80000', '30/12/2021 '),
(08, 'Nabeel', 'Peshawar', 'Microwave', '30000', '15/08/2020 '),
(05, 'Waleed', 'Swat', 'Generator', '100000', '23/02/2022 ');

I dati vengono inseriti correttamente nella tabella eseguendo la query sopra.

Utilizzare Seleziona query

Per recuperare il contenuto di tutte le colonne della tabella richiesta, dobbiamo utilizzare la query selezionata insieme al simbolo '*'. Ogni volta che vogliamo ottenere i dati di alcune colonne dalla tabella, abbiamo dato i nomi di quelle colonne nella query selezionata.

>> Seleziona * dal cliente;

L'output mostra l'intero record dei quattro diversi clienti.

In questo passaggio, abbiamo applicato la query Seleziona per il "fornitore" della tabella in modo da poter ottenere i dati da questa tabella. Abbiamo aggiunto il simbolo * con il termine selezionato nella query per recuperare l'intero dati.

>> Seleziona * dal fornitore;

Eseguendo la query di selezione sopra menzionata, recuperiamo tutti i valori del fornitore della tabella "."

Usa un join esterno sinistro

Il join sinistra e il join esterno sono quasi lavorati in modo simile. Nell'ottima esterno sinistra, qui, tutte le voci delle colonne che scegliamo dalla seconda tabella verrebbero incorporate nell'output della query, indipendentemente dal fatto che i dati soddisfino o meno il requisito indicato di join esterno. Se la seconda tabella contiene voci "N", l'output di query avrebbe anche voci "N". I dati delle colonne della prima tabella, d'altra parte, avranno un valore "null" se qualsiasi articolo non soddisfacesse il requisito di join esterno.

Di conseguenza, il valore di restituzione nel join destro sarebbe uguale ai valori di ritorno nel join a sinistra. Pertanto, potremmo avere le righe corrispondenti di entrambe le tabelle specificate, nonché le voci non corrispondenti della seconda tabella, come mostrato nei risultati precedenti.

Utilizzeremo il "join sinistra" per unire due tabelle "cliente" e "fornitore" in questo esempio:

SELEZIONARE
Cliente.Nome, cliente.Prezzo,
Fornitore.Nome, fornitore.Prezzo
Dal fornitore
Left Join Customer su Fornitore.Città = cliente.Città;

In questo caso, il join di sinistra tra le tabelle "cliente" e "fornitore" è scritto per primo in una query e il criterio di join è scritto subito dopo la dichiarazione ON. La tabella sinistra (fornitore) sarà la prima tabella in seguito, dall'istruzione. La tabella destra (cliente) è la seconda tabella fornita ulteriormente a sinistra. Abbiamo applicato la condizione di sinistra unito sulla colonna "Città" di entrambe le tabelle.

La query esegue correttamente e restituisce i dati, come mostrato nella tabella.

Usa un join in cross esterno

Confrontando tutte le voci della prima tabella, "Cliente" con tutti i valori della seconda tabella, "Fornitore", un cross join restituisce i record nella tabella per i valori assegnati a queste due tabelle collegate.

Non avremo bisogno di definire un requisito di giunzione utilizzando Cross Join, a differenza di un join esterno sinistro, poiché SQLite non lo richiederebbe. Unendo quasi tutti i dati del primo record, "Cliente", insieme a tutte le voci della seconda tabella, "Fornitore", la query produrrebbe risultati ragionevoli.

SELEZIONARE
Cliente.Nome,
Fornitore.Nome
Dal cliente
Fornitore Cross

In questa situazione, abbiamo semplicemente fornito due attributi, "nome" e "prezzo" sia dalle tabelle "cliente" che "fornitore" nella query selezionata. Nella seconda tabella, il "fornitore" è fornito come parametro alla clausola di join incrociata.

Come abbiamo visto, la tabella risultante contiene quattro righe; Ogni riga della tabella "fornitore" corrisponde a un record nella tabella "cliente". Qui non forniremo alcun requisito di join nella clausola di join incrociata, semplicemente le due tabelle concatenate utilizzando il cross join in mezzo.

Usa un join esterno sinistro naturale

Per la tabella del database, il join esterno sinistro naturale impiega tutti i nomi dei campi abbinati.

Utilizzeremo la clausola di join esterna naturale per soddisfare una condizione sul tavolo "fornitore" in questo scenario. Cioè, vogliamo ottenere i dati delle colonne sia dalle tabelle "cliente" che "fornitore". Non forniremo una colonna qui; Invece, dichiariamo la tabella denominata "fornitore" dopo aver usato la clausola.

Seleziona il cliente.Città, cliente.Data di acquisto,
Fornitore.Città, fornitore.Supply_Date
Dal cliente
Fornitore di giunti esterni;

La query precedente indica il risultato contenente i dati (City e Supply_Date) di entrambe le colonne.

Conclusione

Abbiamo discusso dei dettagli di un join esterno nella query SQLite in questo articolo. Questo articolo ha dimostrato numerosi tipi della clausola di join esterne e come utilizzarli con l'aiuto di diversi casi della clausola. Le voci dal tavolo sinistro sarebbero mantenute da un join esterno sinistro. La query SQLite esamina ogni riga della tabella, verifica se il richiesto è soddisfatto e recupera i campi corrispondenti. Fornisce null per tutte le righe in conflitto.