Sottoquery in SQL per gli utenti di LuckyTemplates

Sottoquery in SQL per gli utenti di LuckyTemplates

In questo tutorial impareremo e capiremo come utilizzare una sottoquery in SQL. Una sottoquery è una query all'interno di un'altra query. Possiamo anche chiamarla una query nidificata all'interno di una query più grande. Deve essere racchiuso tra parentesi e utilizzato principalmente in una clausola WHERE .

Sottoquery in SQL per gli utenti di LuckyTemplates

Possiamo utilizzare sottoquery in SQL quando dobbiamo portare dati da più tabelle.

Ad esempio, supponiamo di avere queste 2 tabelle. 

Sottoquery in SQL per gli utenti di LuckyTemplates

Questo è il problema che dobbiamo risolvere. Abbiamo bisogno di ottenere il nome del cliente, l'ID e-mail e l'indirizzo dei clienti che hanno acquistato nel 2022. Ciò non è possibile utilizzando solo la tabella Clienti perché in quella tabella non è presente alcuna colonna relativa alle vendite o alla data dell'ordine. Abbiamo altri modi per risolvere questo problema.

Sottoquery in SQL per gli utenti di LuckyTemplates

Sommario

Recupero manuale dei dati tramite più query individuali

Innanzitutto, poiché abbiamo CustomerId dalla tabella Sales , quello che possiamo fare è ottenere l'ID dei clienti delle persone che hanno acquistato nel 2022 dalla colonna OrderDate sulla tabella Sales

Sottoquery in SQL per gli utenti di LuckyTemplates

Supponendo che ora abbiamo l'ID clienti ( 1, 3, 5, 7, 8, 9… ) delle persone che hanno acquistato dal 2022, possiamo quindi creare un'altra query per ottenere le informazioni di quei clienti attraverso la tabella Clienti in base al loro documento d'identità .

Sottoquery in SQL per gli utenti di LuckyTemplates

Il problema con questo metodo è che abbiamo eseguito il processo manualmente. Innanzitutto, dobbiamo ottenere l'ID dei clienti e inserirli manualmente nella query successiva per ottenere le informazioni sui clienti. 

Ottenere dati automaticamente tramite sottoquery in SQL

Invece di inserire manualmente i loro ID, possiamo farlo automaticamente utilizzando una sottoquery in SQL . Possiamo usarlo insieme alla condizione IN per portare automaticamente l'ID del cliente o qualsiasi dato di cui abbiamo bisogno per risolvere un determinato problema. 

Questo è un esempio di cosa possiamo fare per risolvere il problema. In questa query di esempio selezioniamo il nome, l'indirizzo e l'ID e-mail dei clienti dalla tabella Clienti in base all'ID cliente proveniente dalla query nidificata. In questa query nidificata, l'ID cliente proviene dalla tabella Sales con data ordine 2022.

Sottoquery in SQL per gli utenti di LuckyTemplates

Con questa tecnica, non è necessario inserire manualmente l'ID cliente delle persone che hanno acquistato dall'anno 2022. Verrà recuperato automaticamente dalla query nidificata che abbiamo creato. 

Scenario di sottoquery di esempio tramite SQL Server Management Studio

Ora abbiamo uno scenario simile e questa volta facciamolo all'interno di SQL Server Management Studio ( SSMS ). In questo esempio, abbiamo altre due tabelle SalesOrderHeader e SalesTerritory

Sottoquery in SQL per gli utenti di LuckyTemplates

Il nostro obiettivo è ottenere tutte le informazioni su SalesOrderHeader da un'area geografica degli Stati Uniti . In SalesOrderHeader non è presente la colonna country region. 

Sottoquery in SQL per gli utenti di LuckyTemplates

Tuttavia, possiamo utilizzare la colonna TerritoryID disponibile anche nella tabella SalesTerritory . È qui che possiamo anche ottenere le informazioni sulla regione del paese che è la colonna CountryRegionCode .

Sottoquery in SQL per gli utenti di LuckyTemplates

Sottoquery in SQL per gli utenti di LuckyTemplates

Ancora una volta, possiamo farlo manualmente ottenendo prima il TerritoryID dalla tabella SalesTerritory con una regione del paese degli Stati Uniti

Sottoquery in SQL per gli utenti di LuckyTemplates

Avremo quindi l'elenco di TerritoryID sotto la regione del paese degli Stati Uniti .

Sottoquery in SQL per gli utenti di LuckyTemplates

Successivamente, possiamo utilizzare quegli ID per ottenere il risultato desiderato inserendoli manualmente nella nostra query.

Sottoquery in SQL per gli utenti di LuckyTemplates

Sottoquery in SQL per gli utenti di LuckyTemplates

Ma invece di inserire manualmente gli ID, possiamo farlo facilmente utilizzando una sottoquery. Dobbiamo solo sostituirlo con la nostra prima query in cui otteniamo il TerritoryID nella tabella SalesTerritory con una regione del paese degli Stati Uniti. 

Sottoquery in SQL per gli utenti di LuckyTemplates

Ci darà quindi lo stesso risultato del processo manuale. 

Sottoquery in SQL per gli utenti di LuckyTemplates

Conclusione

Per riassumere, abbiamo appreso l'uso e l'importanza delle sottoquery in SQL. Abbiamo anche discusso la sintassi corretta per la creazione di determinate sottoquery. Possiamo certamente creare più query per creare un processo manuale per ottenere un determinato output. Tuttavia, possiamo invece utilizzare l'uso di subquery con la clausola WHERE e la condizione IN per recuperare automaticamente determinati dati da un'altra tabella.

Si spera che sarai in grado di utilizzare questa tecnica per ottenere un utilizzo più efficiente delle tue query future.

Ti auguro il meglio,

Hafiz

Download e installazione di SQL Server
SQL per utenti di LuckyTemplates: nuovo corso LuckyTemplates
Esecuzione di query sui dati da più origini dati


Cosè il sé in Python: esempi del mondo reale

Cosè il sé in Python: esempi del mondo reale

Cos'è il sé in Python: esempi del mondo reale

Come salvare e caricare un file RDS in R

Come salvare e caricare un file RDS in R

Imparerai come salvare e caricare oggetti da un file .rds in R. Questo blog tratterà anche come importare oggetti da R a LuckyTemplates.

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.

Introduzione al filtraggio del contesto in LuckyTemplates

Introduzione al filtraggio del contesto in LuckyTemplates

In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.

Idee di materializzazione per cache di dati in DAX Studio

Idee di materializzazione per cache di dati in DAX Studio

Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.

Reporting aziendale tramite LuckyTemplates

Reporting aziendale tramite LuckyTemplates

Se finora utilizzi ancora Excel, questo è il momento migliore per iniziare a utilizzare LuckyTemplates per le tue esigenze di reportistica aziendale.

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cos'è il gateway LuckyTemplates? Tutto quello che devi sapere