Gestione delle funzioni di database con SQL Runner

SQL Runner consente di accedere direttamente al database e di sfruttare tale accesso in diversi modi. Con SQL Runner puoi navigare facilmente tra le tabelle dello schema, utilizzare un'esplorazione ad hoc da una query SQL, eseguire query descrittive prescritte sui dati, visualizzare la cronologia di SQL Runner, scaricare i risultati, condividere query, aggiungere a un progetto LookML come tabella derivata ed eseguire altre attività utili.

Questa pagina descrive come modificare lo schema e i dati del database utilizzando SQL Runner, visualizzare il piano di esecuzione del database per una query con l'istruzione EXAMINE e come utilizzare SQL Runner per ottenere informazioni sul database. Consulta queste altre pagine della documentazione per informazioni su:

Modifica dello schema e dei dati del database

Oltre a eseguire query sul database, la scheda Database in SQL Runner consente di eseguire istruzioni DDL (Data Definition Language) e DML (Data Definition Language) sul database. Puoi utilizzare SQL Runner per apportare modifiche allo schema (ad esempio creare, rilasciare e modificare) e modificare i dati (ad esempio inserimento, aggiornamento ed eliminazione). I dialetti SQL supportano diversi tipi di istruzioni DDL e DML, quindi consulta la documentazione del tuo database per scoprire quali istruzioni sono supportate.

Looker non controlla l'autorizzazione delle istruzioni SQL che un utente può eseguire sul tuo database. Gli utenti di Looker con l'autorizzazione use_sql_runner possono accedere a SQL Runner, ma SQL Runner non limita i comandi che l'utente può eseguire. Se l'amministratore del database vuole impedire agli utenti di SQL Runner di modificare lo schema del database, deve configurare le autorizzazioni utente per il database stesso.

Per eseguire un'istruzione DDL o DML sul tuo database in SQL Runner, segui questi passaggi:

  1. Vai a SQL Runner.
  2. In SQL Runner, fai clic sulla scheda Database.
  3. Inserisci l'istruzione DDL o DML nella casella Query di SQL Runner. Consulta la documentazione del dialetto del database per il supporto e la sintassi delle istruzioni DDL e DML.
  4. Fai clic su Esegui per eseguire l'istruzione sul database.

Se l'istruzione viene eseguita correttamente sul database, la casella Risultati SQL mostrerà una conferma.

Analisi di un piano di esecuzione utilizzando EXPLAIN

Oltre a eseguire query SQL sul database, puoi utilizzare SQL Runner per eseguire una funzione EXPLAIN per una query. La funzione EXPLAIN, supportata dalla maggior parte dei dialetti SQL, restituisce il piano di esecuzione del database per una query.

  1. Da un'esplorazione, esegui una query e fai clic sulla scheda SQL dell'area Dati per visualizzare il comando SQL della query.
  2. Nella scheda SQL di Esplora, fai clic sul pulsante Spiega in SQL Runner.

    Looker aprirà SQL Runner e caricherà la query all'interno di una funzione EXPLAIN.

  3. In SQL Runner, fai clic su Esegui per eseguire la funzione EXPLAIN.

  4. Visualizza l'output della funzione EXPLAIN.

Le informazioni esatte e il formato della risposta EXPLAIN dipenderanno dal dialetto specifico, quindi ti consigliamo di consultare la documentazione del dialetto per informazioni specifiche.

Nell'esempio MySQL precedente, la funzione EXPLAIN restituisce un elenco dei passaggi eseguiti dal database per completare la query. Questo può essere utile per le query che sembrano lente da eseguire, poiché potresti notare che il database sta analizzando un'intera tabella in una query, quando forse la tabella potrebbe utilizzare un indice per migliorare le prestazioni.

Per un esempio dettagliato di come utilizzare EXPLAIN in SQL Runner per ottimizzare SQL, consulta Come ottimizzare SQL con EXPLAIN Post della scheda Community.

Recupero delle informazioni sul database

La scheda Database in SQL Runner offre una serie di strumenti per ottenere insight sul tuo database.

Recupero delle informazioni di connessione al database

Quando scegli una connessione in SQL Runner, Looker visualizza il dialetto del database per quella connessione a destra del banner QUERY SQL. Se hai raggiunto SQL Runner scegliendo Apri in SQL Runner o Spiega in SQL Runner, Looker preseleziona la connessione appropriata e visualizza il dialetto del database della connessione.

Fai clic sul menu a forma di ingranaggio di connessione per visualizzare altre opzioni per la connessione al database:

  • Seleziona l'opzione Mostra processi per visualizzare le informazioni sulle query e sui processi attualmente in esecuzione sulla connessione.
  • Seleziona Aggiorna schemi e Tables per ricompilare il riquadro di navigazione sinistro di SQL Runner con gli schemi e le tabelle nel database.

Opzioni del menu a forma di ingranaggio di BigQuery

Quando scegli una connessione BigQuery che supporta più database, Looker visualizza le opzioni specifiche per i dialetti nel menu a forma di ingranaggio. La voce di menu passa da Mostra progetti disponibili a Cerca progetti pubblici e viceversa, a seconda dell'opzione attualmente selezionata.

  • Seleziona Aggiorna schemi e Tabelle per ricompilare il riquadro di navigazione sinistro di SQL Runner con gli schemi e le tabelle presenti nel database.
  • Quando sono visualizzati i progetti disponibili, il menu a forma di ingranaggio mostra l'opzione Cerca nei progetti pubblici. Seleziona questa opzione per cercare set di dati pubblici che non sono visibili nello schema delle informazioni.
  • Quando vengono visualizzati i progetti pubblici, è presente l'opzione di menu a forma di ingranaggio Mostra i progetti disponibili. Seleziona questa opzione per ripristinare la visualizzazione di tabelle e progetti BigQuery specifici per la connessione nel riquadro di navigazione sinistro di SQL Runner.

Ricerca nel database

SQL Runner mostra una casella di ricerca sotto lo schema (o Set di dati) selezionato per le connessioni di Google BigQuery.

La ricerca SQL Runner esamina i nomi di tutte le tabelle e le colonne di tabella che contengono la stringa nella casella di ricerca. Nella figura seguente, "airport_name" è una colonna e "airport_remarks" è una tabella.

Fai clic su uno dei risultati di ricerca per passare a quell'elemento in SQL Runner.

Recupero delle informazioni della tabella in corso...

Per impostazione predefinita, SQL Runner precarica tutte le informazioni della tabella quando selezioni una connessione e uno schema. Per le connessioni con molte tabelle o tabelle molto grandi, un amministratore può disabilitare questo comportamento deselezionando l'opzione Precache SQL Runner nella pagina Connessioni.

Il pannello di navigazione sinistro di SQL Runner ti consente di esplorare gli schemi e le tabelle nelle tue connessioni. Seleziona una connessione e uno schema per visualizzare tutte le tabelle nello schema. Fai clic sul nome di una tabella per visualizzare i campi al suo interno.

SQL Runner ha alcune query prescritte per aiutarti a comprendere i dati. Per utilizzare queste query, fai clic sull'icona a forma di ingranaggio visualizzata accanto al nome di una tabella o di una colonna della tabella e seleziona la query desiderata. Looker genera automaticamente il codice SQL nella sezione Query SQL e la query verrà eseguita.

Le query disponibili variano in base al dialetto del database.

Informazioni tabella

Looker mostra le seguenti opzioni quando fai clic sull'icona a forma di ingranaggio accanto al nome di una tabella:

  • Tabella di esplorazione: apre una nuova scheda del browser in un'esplorazione di Looker della tabella.
  • Descrivi: mostra i nomi delle colonne nella tabella sottostante e i relativi tipi di dati.
  • Mostra indici: mostra informazioni su come viene indicizzata la tabella.
  • Seleziona 10: restituisce una query delle prime dieci righe della tabella. Questo è un buon modo per avere un'idea di come appaiono effettivamente i dati.
  • Conteggio: restituisce una semplice query count(*) per ottenere il conteggio totale delle righe della tabella.

Informazioni colonna

Fai clic sul nome di una tabella per visualizzare le sue colonne. Looker mostra le seguenti opzioni quando fai clic sull'icona a forma di ingranaggio accanto al nome di una colonna:

  • Valori più comuni: restituisce una query dei valori più comuni per quella colonna della tabella, insieme a un conteggio del numero di volte in cui quel valore viene trovato nella colonna.
  • Conteggio approssimativo distinto: mostra un conteggio approssimativo del numero di valori distinti trovati nella colonna.

Recupero delle informazioni sui tipi di dati della colonna

Puoi utilizzare SQL Runner per ottenere informazioni sul tipo di dati della colonna eseguendo questi passaggi:

  1. In SQL Runner, seleziona la connessione al database dall'elenco a discesa Connessione.
  2. Seleziona lo schema dal menu a discesa Schema. (Per le connessioni BigQuery, seleziona Progetto e Set di dati).
  3. SQL Runner visualizza l'elenco delle tabelle nello schema nel database. Fai clic su una tabella per visualizzare le colonne al suo interno.
  4. Il nome di ogni colonna è accompagnato da un'icona che rappresenta il tipo di dati. Passa il mouse sopra il nome di una colonna per visualizzare il tipo di dati al suo interno.

Modifica delle query SQL predefinite

Puoi modificare qualsiasi query SQL nell'area Query, incluse le query SQL preimpostate scelte dai menu a forma di ingranaggio della tabella e dei campi.

Ad esempio, puoi utilizzare la query SQL Runner Count per caricare un comando di conteggio di base per un database, quindi modificare la query SQL. Pertanto, se ritieni che la colonna id nella tabella public.users possa essere una chiave primaria, puoi confermare che non ci siano valori duplicati modificando la query di conteggio in questo modo:

SELECT id ,COUNT(*)
FROM public.users
GROUP BY 1
ORDER BY 2 DESC
LIMIT 10

Poiché la query viene ordinata in base al numero prima che i risultati siano limitati a 10 righe, i risultati includeranno i valori di conteggio più elevati. Se questa query restituisce un conteggio pari a 1 per ogni valore id, id sarebbe probabilmente la chiave primaria in questa tabella. Tuttavia, questa query specifica solo le righe della tabella al momento dell'esecuzione della query. Poiché gli inserimenti futuri nel database potrebbero rendere id una chiave primaria non idonea, ti consigliamo di implementare delle limitazioni nel tuo database per garantire che le tue chiavi primarie siano univoche.