Insights / Blog

SQL e Tableau, una rapida guida – Parte 1

Training_TIL

SQL non ti temo. Ci sono diversi modi per integrare Tableau con delle tabelle, dei database o dei file di testo, e uno di questi è il linguaggio SQL. Ora lo so, può spaventare questa parola che in realtà è una sigla e che andando ancora più nello specifico è un codice. Vedrete tuttavia che una volta affrontato si rivela essere un valido aiutante e un linguaggio molto semplice.

Partiamo dalla definizione. “SQL è un linguaggio per interrogare e gestire basi di dati mediante l’utilizzo di costrutti di programmazione denominati query. Con SQL si leggono, modificano, cancellano dati e si esercitano funzioni gestionali ed amministrative sul sistema dei database“.
SQL che sta per Structured Query Language permette quindi di entrare in un database e “giocarci”, leggendolo, modificandolo e soprattutto facendogli più domande possibili, le query appunto.

Con una query è possibile estrarre, inserire, aggiornare e cancellare record da un database oltre a creare nuovi database, nuove tabelle in un database, view, stored procedure e ancora, settare permessi su tabelle, procedure e view.

sql tableau jordan by Rob Conery

Come funziona SQL?

Iniziamo ad addentrarci nel vocabolario o lessico di SQL. Come comunica e come noi dovremo comunicare con lui?

Facciamo subito degli esempi semplici (con il database di Superstore):
Con [Tabella$] intendiamo una intera tabella. Ad esempio: [Orders$], dove il simbolo del dollaro significa “prendi tutto”.

Se invece vogliamo solo una colonna scriveremo [Colonna] ovvero il nome della colonna, ad esempio [Category]

E se invece voglio dei valori? Se lo scriviamo tra virgolette, tipo “Valore” sarà di tipo stringa, come “Forniture”, senza virgolette invece sarà di tipo numerico (es: 80).

Il SELECT

Ora ci serve un comando che dica a SQL di andare a prendere questi valori, tabelle, colonne e quant’altro, ovvero il SELECT. Facciamo un esempio subito:
SELECT column_name, column_name
FROM table_name;

Stiamo dicendo, vammi a prendere le colonne che ti chiedo, dalla tabella che voglio. Se invece volessi tutto e non solo determinate colonne, metto un asterisco (occhio quindi, il dollaro è per una intera tabella, qui invece stiamo dicendo una cosa diversa, lo vediamo subito)

Due esempi:
SELECT * FROM [Orders$]
Seleziona tutto dalla tabella Orders, non facciamo gli schizzinosi

Se invece volessi solo le colonne Category e Sales della tabella Orders:
SELECT [Category], [Sales]
FROM [Orders$]

Le condizioni, il WHERE

Ora poniamo delle condizioni, non vogliamo prendere tutto tutto o tutta una colonna, ma solo determinati dati che corrispondono a una nostra condizione. Per fare ciò useremo il comando WHERE.

SELECT column_name, column_name
FROM table_name
WHERE column_name operator value

Selezionami determinate colonne, da una certa tabella dove il valore nella colonna è uguale alla condizione che pongo

Estrai tutte le righe della tabella Orders completa, in cui la categoria è Furniture
SELECT * FROM [Orders$]
WHERE [Category]=”Furniture”

Ricordate? Se una stringa, allora tra virgolette

Estrai tutte le righe delle colonne Category, Sales e Profit della tabella Orders dove il profitto è maggiore di 2000:
SELECT [Category], [Sales], [Profit]
FROM [Orders$]
WHERE [Profit]>2000

2000 non è una stringa, quindi niente virgolette.

Le Wildcards

Un altro modo per ficcare il naso in un database sono le wildcards, ovvero usare i metacaratteri per effettuare ricerche in stringhe di testo, per porre dei criteri alfabetici

Esempio di sintassi:
SELECT column_name, column_name
FROM table_name
WHERE column_name LIKE wildcards

Esempio concreto: seleziona dalla tabella Orders le colonne Category e Sub­Category, filtrando solo le righe in cui la Sub­Category comincia per “T”

SELECT [Category], [Sub­Category]
FROM [Orders$]
WHERE [Sub­Category] LIKE “T%”

Posso fare le stesse cose con Tableau senza SQL?

Certo. Ed è anche più semplice in quanto diventa una questione di drag and drop. Ad esempio per il SELECT per una intera tabella basterà trascinarla dentro l’area

select sql 2

Cliccando su Add… possiamo selezionare le colonne e in seguito porre le nostre condizioni, le wildcards e tutto quello che ci interessa.

Nel prossimo articolo vedremo invece come effettuare delle join e delle union.

 

Blog
data driven business

Data-driven business: perché il dato è cruciale per l’azienda?

Il data-driven business è un percorso a cui ormai nessuna impresa può sottrarsi. Contare su...

Blog
creare grafici interattivi

Creare grafici interattivi: Come si fa e principali vantaggi

Nel mondo digitale odierno, la visualizzazione dei dati è fondamentale per comunicare informazioni complesse in...