Sapere in quale colonna si desidera raggruppare e come raggrupparle, in primo luogo, è importante. Dovrai saperlo per impostare il CASE STATEMENT
scriveremo come una colonna in una nostra istruzione select. Nel nostro caso, in un gruppo di email che accedono al nostro sito, vogliamo sapere quanti clic ha contabilizzato ciascun provider di posta elettronica dall'inizio di agosto. Vorremmo anche confrontare un singolo provider di servizi di posta elettronica con il resto. Per questo esempio, utilizzeremo Gmail come nostro fornitore di servizi.
Nel nostro SELECT
dichiarazione, avremo bisogno del DATE
, il PROVIDER
e il SUM
dei CLICKS
al nostro sito. Possiamo ottenerli da TEST E MAILS
tabella nella nostra origine dati.
Il DATE
la colonna è piuttosto semplice:
"Test E Mails"."Created_Date" AS "DATE
E poiché stiamo cercando il SUM
dei CLICKS
, dovremo trasmettere un SUM
funzione sopra il CLICKS
colonna.
SUM("Test E Mails"."Clicks") AS "CLICKS"
Questo ci porta al nostro CASE STATEMENT
. Sappiamo dalla documentazione di PostgreSQL che una CASE STATEMENT, o un'istruzione condizionale, deve essere organizzata nel modo seguente:
CASE
WHEN condition THEN result
[WHEN ...]
[ELSE result]
END
La nostra prima e, in questo caso unica, condizione è che vogliamo che tutti gli indirizzi email forniti da Gmail siano separati da ogni altro provider di posta elettronica. Quindi l'unico WHEN
è:
WHEN "Test E Mails"."Provider" = 'Gmail' THEN 'Gmail'
E l'istruzione else sarebbe "Altro" per ogni altro provider di indirizzi e-mail. La tabella risultante di questo CASE STATEMENT
solo con le email corrispondenti. Sarebbe simile a questo:
Quando unisci tutte e tre quelle colonne per un SELECT STATEMENT
e aggiungi il resto dei pezzi necessari per costruire una query SQL, tutto prende forma di seguito.
Quindi dopo aver aggiunto un PIVOT DATA
entrare nella pipeline di dati, otterremo una tabella correttamente organizzata nel formato corretto per impostare un grafico a linee che mostra come i clic vengono confrontati nel tempo.
Utilizzando Chartio, possiamo fare tutto quanto sopra senza scrivere alcun SQL ma sfruttando le funzionalità di Data Explorer e Data Pipeline. Dopo aver creato la nostra query sottostante per inserire tutte le colonne, avremo bisogno di SUM OF CLICKS
, DATE
e EMAIL ADDRESS
possiamo usare la pipeline di dati per manipolare questi dati post-SQL. Per prima cosa, costruiamo la query.
Trascina la "Colonna dei clic" nella casella delle misure e aggregala per TOTAL SUM
della colonna Clic, quindi rinominala "CLIC".
Quindi trascina "Data di creazione" e "Provider" nella casella delle dimensioni e rinominali "Data" e "Provider e-mail". Successivamente, utilizzando la colonna "Data di creazione" puoi impostare l'intervallo di date (o creare il tuo WHERE
clausola) essere tutto dopo il 01-08-2017. Questo creerà efficacemente tutto ciò di cui abbiamo bisogno in una query sottostante per creare il CASE STATEMENT
abbiamo fatto sopra, nella pipeline di dati di Chartio.
Aggiunta di un CASE STATEMENT
il passaggio della pipeline ci consente di impostare le condizioni per il WHEN
e il ELSE
proprio come abbiamo fatto prima, senza dover digitare l'intera sintassi SQL.
Quindi dopo aver nascosto la colonna "Fornitore" originale e aver utilizzato un REORDER COLUMNS
passo e un PIVOT DATA
passo otterremo la stessa disposizione delle tabelle che abbiamo ottenuto in modalità SQL e possiamo presentare la stessa tabella che abbiamo fatto in modalità SQL.
Sebbene possano essere necessari alcuni clic e passaggi in più rispetto alla modalità SQL, il grafico a linee risultante eseguito in modalità interattiva non richiede la conoscenza della sintassi SQL. Invece tutto ciò che serve è una comprensione di base dei principi coinvolti. Questo è un altro esempio di come Chartio stia aiutando a mettere il potere dei dati nelle mani di tutti, indipendentemente dalla conoscenza di SQL.