Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

In questo blog discuteremo alcune espressioni di tabella comuni, note anche come CTE . Se riscontri problemi complessi, l'utilizzo di queste espressioni di tabella SQL può aiutarti.

Con CTE puoi suddividere qualsiasi attività in query piccole e gestibili per risolvere problemi complicati.

Ora esploriamo come CTE può rendere il tuo lavoro più efficiente nella risoluzione dei problemi dei codici.

Sommario

Sintassi per la creazione di espressioni di tabelle SQL comuni 

Innanzitutto, devi digitare " WITH " seguito dal nome della tua espressione CTE , seguito da " AS ".

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Successivamente, puoi fornire qualsiasi query tra parentesi. Questo verrà memorizzato nel nome dell'espressione fornito che funzionerà come una tabella virtuale.

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Quindi, aggiungi un'istruzione SELECT utilizzando la tabella virtuale che hai creato tramite il nome dell'espressione che hai impostato.

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Per il nostro esempio, useremo " USACusts " per il nome dell'espressione .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

E per la query, useremo questo codice. 

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Questa query creerà una tabella virtuale. Mostrerà un importo totale o aggregato raggruppato per ID cliente in cui il paese di appartenenza è " USA ". I dati verranno estratti dalla tabella Vendite.Clienti .

Saranno visibili due colonne, che sono custid e Agg_Amount . Prendi nota che la tabella USACusts non è una tabella fisica ma solo una tabella virtuale. Ciò significa che non sarà visibile nel nostro database.

Dopo la query, possiamo quindi aggiungere un'istruzione SELECT .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Questa istruzione selezionerà tutti gli Agg_Amount maggiori di 1000 dalla tabella USACusts .

Espressioni di tabelle SQL comuni multiple 

Più CTE possono aiutarti a risolvere errori complessi nel tuo codice suddividendoli in blocchi più piccoli. Inoltre, puoi definire tutte le CTE che desideri. Di seguito è riportato un esempio di più CTE .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Per questo esempio, abbiamo il primo CTE che è C1 . Da lì, abbiamo selezionato YEAR(orderdate) e creato 2 colonne che sono orderyear e custid dalla tabella Sales.Orders .

Per il secondo CTE denominato C2 , abbiamo selezionato orderyear e raccolto il numero di custid utilizzando il comando COUNT . Quindi l'abbiamo chiamato come numcusts da C1 . È stata inoltre aggiunta una condizione WHERE in C2 per selezionare solo l' orderyear maggiore di 2015 . Quindi li abbiamo raggruppati per orderyear .

Successivamente, abbiamo selezionato orderyear e numcusts da C2 . Quindi abbiamo aggiunto una condizione WHERE per selezionare solo il numero di clienti maggiore di 500 .

Per riassumere, questo codice viene utilizzato per selezionare i clienti in cui orderyear è maggiore di 2015 e selezionare solo il numero di clienti che sono più di 500 in base alla condizione orderyear .

Utilizzo di più CTE per la risoluzione di codici complessi

Successivamente, dimostrerò altri esempi per enfatizzare ulteriormente l'utilizzo di CTE nella risoluzione dei problemi di un grande insieme di dati. Ecco un altro esempio di più CTE .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Tieni presente che puoi nominare i CTE nel modo desiderato, ma per questo blog utilizziamo C1 , C2 , C3 e così via per identificare e comprendere facilmente come li utilizziamo nei nostri esempi.

Tornando all'esempio, abbiamo creato C1 per selezionare solo le vendite in cui la quantità dell'ordine è maggiore di 5 dalla tabella Sales.SalesOrderDetails .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Quindi in C2 , abbiamo utilizzato i dati archiviati in C1 per unire il prodotto in base a Product.ID e li abbiamo raggruppati per nome del prodotto (p.Name) e colore del prodotto (p.Color) .

Poiché abbiamo dichiarato una condizione in C1 , raggrupperemo solo il nome del prodotto e il colore del prodotto in C2 per gli ordini in cui la quantità dell'ordine (OrderQty) è maggiore di 5 .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Successivamente, utilizzeremo un comando per selezionare tutti i dati da C2 con una quantità dell'ordine maggiore di 1000 .

Per la risoluzione dei problemi, puoi semplicemente selezionare ciascuno dei CTE che hai creato per verificare se mostra i dati corretti. Fare riferimento agli esempi seguenti.

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Per C1 , mostra tutti i dati della tabella Sales.SalesOrderDetail con una quantità dell'ordine maggiore di 5 .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Quindi C2 mostra un output della quantità dell'ordine raggruppata per nome prodotto e colore da C1 . In C2 , possiamo vedere la colonna orderqty ma in realtà non ce l'abbiamo in C2 perché è solo una colonna calcolata che abbiamo generato da C1 . Da qui, possiamo quindi iniziare a utilizzare qualsiasi condizione nella colonna orderqty ed eseguire la risoluzione dei problemi.

Quindi, ora puoi vedere come più CTE possono aiutarci a risolvere errori in codici complessi memorizzandoli in CTE e avviando la risoluzione dei problemi senza danneggiare il codice effettivo.

Utilizzo di CTE con istruzione Case

Facciamo un altro esempio con lo stesso contesto per mostrare come possiamo utilizzare più CTE nella risoluzione dei problemi di codici complessi. 

In questo caso, utilizzeremo un'istruzione CASE che creerà una colonna Product Category con risultati basati sulla quantità aggregata di orderqty da C2 .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Come accennato in precedenza, non avevamo orderqty nel primo CTE e Product Category , ma abbiamo utilizzato tabelle intermedie per calcolare ed eseguire calcoli diversi.

Nel prossimo esempio, creeremo un importo aggregato basato sulla categoria di prodotto che abbiamo creato nell'esempio precedente. Ma per fare ciò, inseriremo l' istruzione CASE per Product Category nel terzo CTE che è C3 .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Prima di procedere, controlliamo l'output di C3 aggiungendo " SELECT * FROM C3 " sotto C3 .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

In C3 possiamo vedere le colonne ProductName , Color , orderqty e Product Category . Da qui, possiamo iniziare ad aggregare in base alla Product Category . Facciamolo usando il seguente comando sotto C3 .

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

L'esempio seguente è il risultato dopo aver creato un importo aggregato utilizzando il comando precedente.

Espressioni di tabelle SQL comuni per gli utenti di LuckyTemplates

Inizialmente, non avevamo le colonne Product Category e orderqty , ma siamo in grado di generare output di esempio basati su queste colonne utilizzando più CTE .

A questo punto, puoi vedere che possiamo fare qualsiasi cosa con l'aiuto dei CTE per lavorare con i nostri codici in modo più efficiente.

Tabelle e viste temporanee SQL per LuckyTemplates
Filtro utente in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE
Estrazione dati SQL utilizzando OFFSET e FETCH

Conclusione

In questo tutorial, hai imparato la sintassi corretta nella creazione di espressioni di tabella SQL comuni e come utilizzare più CTE nella risoluzione dei problemi di codici complessi isolando piccole parti di dati e memorizzandole all'interno di un dato CTE .

Imparando questo, ora hai la possibilità di eseguire il debug dei tuoi codici in modo più efficiente. Ricorda che puoi utilizzare qualsiasi nome per CTE e non puoi utilizzare o chiamare alcun CTE a meno che non sia stato creato. Una volta acquisita familiarità con CTE , puoi considerarti un utente intermedio di SQL .

Se desideri saperne di più su questo argomento e altri contenuti correlati, puoi sicuramente consultare l'elenco dei link pertinenti di seguito.

Ti auguro il meglio,

Hafiz


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