Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Sfida: Ottimizzazione delle Query | Ottimizzazione Delle Query.Indici
Tecniche Avanzate in SQL

bookSfida: Ottimizzazione delle Query

Esploriamo due tabelle: BankAccounts e un'ulteriore tabella chiamata Transactions.

Tabella BankAccounts

Tabella Transactions

Supponiamo di voler recuperare solo i numeri di conto che hanno effettuato almeno una transazione.

In questo esercizio, abbiamo una query che non è ottimizzata. Il tuo compito è riscriverla in modo più efficiente.

Ecco un elenco delle principali tecniche di riscrittura delle query per migliorarne l'ottimizzazione:

  1. Specificare esplicitamente le colonne: invece di utilizzare il carattere jolly (*), indicare esplicitamente i nomi delle colonne nelle query per ottenere migliori prestazioni, leggibilità e manutenibilità;

  2. Minimizzare le sottoquery: ridurre l'uso delle sottoquery per ottimizzare le prestazioni delle query. Considerare alternative come join o tabelle derivate per evitare complessità e sovraccarico;

  3. Evitare l'uso ripetuto dell'operatore IN: limitare l'utilizzo dell'operatore IN nelle query per prevenire impatti sulle prestazioni. In alternativa, considerare l'uso delle clausole JOIN o EXISTS per piani di esecuzione più efficienti;

  4. Organizzare i join in modo logico: iniziare i join SQL dalla tabella principale e poi unire le tabelle correlate per ottimizzare l'organizzazione della query e l'ottimizzazione da parte del motore di database;

  5. Utilizzare condizioni WHERE restrittive: migliorare le prestazioni delle query includendo condizioni restrittive nella clausola WHERE per filtrare le righe e aumentare la velocità di esecuzione;

  6. Rifattorizzare il codice in stored procedure o funzioni: incapsulare segmenti di codice ripetitivi in stored procedure o funzioni definite dall'utente per riutilizzabilità del codice, modularità e manutenzione semplificata. Queste possono ridurre la ridondanza e ottimizzare le query SQL.

Compito

Swipe to start coding

Riscrivere la query in modo più ottimale. Prestare attenzione al fatto che è necessario ottenere solo i numeri di conto che hanno effettuato almeno una transazione (trasferito denaro su un altro conto) ordinati in ordine crescente.

Nota

Utilizzare il tipo di join LEFT o INNER per completare questo compito.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 7
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

Awesome!

Completion rate improved to 4.35

bookSfida: Ottimizzazione delle Query

Scorri per mostrare il menu

Esploriamo due tabelle: BankAccounts e un'ulteriore tabella chiamata Transactions.

Tabella BankAccounts

Tabella Transactions

Supponiamo di voler recuperare solo i numeri di conto che hanno effettuato almeno una transazione.

In questo esercizio, abbiamo una query che non è ottimizzata. Il tuo compito è riscriverla in modo più efficiente.

Ecco un elenco delle principali tecniche di riscrittura delle query per migliorarne l'ottimizzazione:

  1. Specificare esplicitamente le colonne: invece di utilizzare il carattere jolly (*), indicare esplicitamente i nomi delle colonne nelle query per ottenere migliori prestazioni, leggibilità e manutenibilità;

  2. Minimizzare le sottoquery: ridurre l'uso delle sottoquery per ottimizzare le prestazioni delle query. Considerare alternative come join o tabelle derivate per evitare complessità e sovraccarico;

  3. Evitare l'uso ripetuto dell'operatore IN: limitare l'utilizzo dell'operatore IN nelle query per prevenire impatti sulle prestazioni. In alternativa, considerare l'uso delle clausole JOIN o EXISTS per piani di esecuzione più efficienti;

  4. Organizzare i join in modo logico: iniziare i join SQL dalla tabella principale e poi unire le tabelle correlate per ottimizzare l'organizzazione della query e l'ottimizzazione da parte del motore di database;

  5. Utilizzare condizioni WHERE restrittive: migliorare le prestazioni delle query includendo condizioni restrittive nella clausola WHERE per filtrare le righe e aumentare la velocità di esecuzione;

  6. Rifattorizzare il codice in stored procedure o funzioni: incapsulare segmenti di codice ripetitivi in stored procedure o funzioni definite dall'utente per riutilizzabilità del codice, modularità e manutenzione semplificata. Queste possono ridurre la ridondanza e ottimizzare le query SQL.

Compito

Swipe to start coding

Riscrivere la query in modo più ottimale. Prestare attenzione al fatto che è necessario ottenere solo i numeri di conto che hanno effettuato almeno una transazione (trasferito denaro su un altro conto) ordinati in ordine crescente.

Nota

Utilizzare il tipo di join LEFT o INNER per completare questo compito.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

close

Awesome!

Completion rate improved to 4.35
Sezione 2. Capitolo 7
single

single

some-alt