Visualizza le categorie

Dal linguaggio naturale a SQL: come Nova AI trasforma le domande in query di database

BASATO SULL'IA

Nova AI ➤ Il vostro database

Nova AI Nova AI
Flussi di query Flussi di query
Il vostro database Il vostro database
✓ Da testo a SQL
✓ 10 dialetti
✓ Schema convalidato

Nova AI di Query Streams Nova converte domande in linguaggio naturale in query SQL validate e specifiche per ogni dialetto, compatibili con dieci diversi motori di database. Digitando "mostrami le vendite totali per regione per l'ultimo trimestre", Nova genera la query SQL corretta, con JOIN, aggregazioni, funzioni di data e sintassi appropriate per il database specifico utilizzato: PostgreSQL, MySQL, SQL Server, Oracle, Snowflake, BigQuery o qualsiasi altro motore supportato. Ogni query passa attraverso una pipeline di validazione in quattro fasi prima dell'esecuzione: individuazione dello schema, verifica delle colonne, tracciamento del percorso di join e validazione della sintassi. È questo che distingue un sistema text-to-SQL pronto per la produzione da un chatbot generico che indovina i nomi delle tabelle. Di seguito sono riportati cinque esempi reali che mostrano come Nova traduce domande in linguaggio naturale sempre più complesse in query SQL accurate. Provalo gratis — non è richiesta alcuna carta di credito.

Come il linguaggio naturale si trasforma in SQL
Cinque fasi, dalla tua domanda ai risultati validati
La tua domanda
“I 10 prodotti con il fatturato più alto”
Ricerca schema
tabelle, colonne, chiavi esterne
Generazione SQL
query specifica del dialetto
Validazione
controllo sintassi + schema
Risultati
griglia o grafico dei dati
1

Filtro semplice: linguaggio chiaro per la clausola WHERE

Il modello più comune di conversione da testo a SQL. Nova associa "dalla California" alla colonna e al valore corretti.

Nova AI
Nova
PostgreSQL — crm_prod
Mostrami tutti i clienti attivi dalla California
Utente
Nova
“clienti attivi”→DOVE status = 'attivo'
"dalla California"→E stato = 'CA'
Copia Correre
SELEZIONARE nome_azienda, email_contatto, città, stato, creato_il
DA clienti pubblici
DOVE stato = 'attivo'
  E stato = 'CA'
ORDINATO DA nome_azienda
312 righe x 5 colonne · 45 ms
nome_aziendacittàstato
Alpine TechSan FranciscoCA
Bay AnalyticsOaklandCA
CloudBridge IncSan JoseCA
+ 309 righe in più · Espandi
Trovato 312 clienti attivi in California. Nova ha rilevato che stato Utilizza abbreviazioni di 2 lettere (CA, non "California") dalla profilazione delle colonne. Desideri filtrare per città o esportare i dati?
Chiedi a Nova qualsiasi cosa sui tuoi dati…
2

Aggregazione: “Totale” e “Per” diventano SOMMA + RAGGRUPPAMENTO PER

Nova riconosce l'intento di aggregazione da parole come "totale", "media", "conteggio" e il raggruppamento da "per categoria".

Nova AI
Nova
MySQL — e-commerce
Ricavo totale per categoria di prodotto, ordinato dal più alto al più basso.
Utente
Nova
“ricavo totale”→SOMMA(oi.quantità * oi.prezzo_unitario)
“per categoria di prodotto”→RAGGRUPPARE PER categoria
"ordinato dal più alto al più basso"→ORDINA PER fatturato_totale DESC
Copia Correre
SELEZIONARE categoria p,
       SOMMA(oi.quantità * oi.prezzo_unitario) AS entrate_totali,
       CONTO(DISTINTO o.order_id) AS numero_ordini
DA prodotti p
CONGIUNGERE order_items oi ON p.product_id = oi.product_id
CONGIUNGERE ordini o ON oi.order_id = o.order_id
GRUPPO PER categoria p.
ORDINATO DA ricavi_totali DESC
8 righe x 3 colonne · 92 ms
categoriaricavi_totalinumero_ordini
Elettronica$1,284,52012,840
Software$892,3408,920
Fibre$654,1003,270
+ altre 5 categorie · Espandi
Elettronica lead a $1,28 milioni su 12.840 ordini. Nova si è unita automaticamente a 3 tavoli tramite ID prodotto e ID ordine Chiavi esterne. Desideri un grafico a barre o vuoi analizzare in dettaglio una categoria specifica?
Chiedi a Nova qualsiasi cosa sui tuoi dati…
3

Intervalli di date: da "Ultimo trimestre" a funzioni di data specifiche per dialetto

Il linguaggio di data naturale (NTL) si traduce in diversi valori SQL a seconda del motore del database. Nova gestisce questa corrispondenza automaticamente.

Nova AI
Nova
SQL Server — finance_db
Totale delle fatture mensili per l'ultimo trimestre
Utente
Nova
Rilevato dialetto di SQL Server: utilizzo della sintassi DATEPART, DATEADD, TOP
Copia Correre
SELEZIONARE
  DATAPARTE(MESE, data_fattura) AS mese_fattura,
  DATANOME(MESE, data_fattura) AS nome_mese,
  SOMMA(importo totale) AS totale_mensile,
  CONTO(*) AS numero_fatture
DA dbo.invoices
DOVE data_fattura >= DATA AGGIUNTA(TRIMESTRE, DATATO(TRIMESTRE, 0, GETDATE()) - 1, 0)
  E data_fattura < DATA AGGIUNTA(TRIMESTRE, DATATO(TRIMESTRE, 0, GETDATE()), 0)
GRUPPO PER DATAPARTE(MESE, data_fattura),
         DATANOME(MESE, data_fattura)
ORDINATO DA mese_fattura
3 righe x 4 colonne · 38 ms
nome_mesetotale_mensilenumero_fatturemese_fattura
Gennaio$148,3202341
Febbraio$162,8902512
Marzo$157,4402483
Febbraio ha avuto la più alta quotazione a $162,890. Nota: poiché questo è SQL Server, Nova ha usato DATAPARTE e DATA AGGIUNTA invece di PostgreSQL data_truncLa stessa domanda su PostgreSQL produrrebbe un codice SQL diverso ma equivalente.
Chiedi a Nova qualsiasi cosa sui tuoi dati…
4

Query complesse: sottoquery e funzioni finestra da un'unica frase

Le domande avanzate generano query SQL multilivello con CTE, subquery o funzioni finestra, senza che sia necessaria alcuna conoscenza di SQL.

Nova AI
Nova
Fiocco di neve — analytics_wh
Clienti che quest'anno hanno speso più della media, classificati in base alla spesa totale.
Utente
Nova
“più della media”→AVENDO total_spend > (sottoquery)
“quest'anno”→DOVE YEAR(order_date) = 2026
"classificata in base alla spesa totale"→ORDINA PER spesa_totale DESC
Copia Correre Risparmiare
CON totali_clienti AS (
  SELEZIONARE c.customer_id, c.company_name,
         SOMMA(o.total_amount) AS spesa_totale
  DA ANALISI.CLIENTI c
  CONGIUNGERE ANALISI.ORDINI o ON c.customer_id = o.customer_id
  DOVE ANNO(o.order_date) = 2026
  GRUPPO PER c.customer_id, c.company_name )
SELEZIONARE nome_azienda, spesa_totale,
       CLASSIFICA() SOPRA (ORDINATO DA spesa_totale DESC) AS rango_spesa
DA totali_clienti
DOVE spesa_totale > (SELEZIONARE AVG(spesa_totale) DA totali_clienti)
ORDINATO DA spesa_totale DESC
47 righe x 3 colonne · 210 ms
nome_aziendaspesa_totalerango_spesa
Soluzioni GlobalTech$428,9001
Meridian Corp$312,4502
Apex Manufacturing$289,1003
+ altre 44 righe · Espandi
47 clienti superare la spesa media di 24.680 dollari. Nova ha utilizzato un CTE con un RANGO() funzione finestra e un filtro di sottoquery. I riferimenti allo schema in maiuscolo specifici di Snowflake (ANALISI.CLIENTI) corrisponde alla denominazione del tuo magazzino.
Chiedi a Nova qualsiasi cosa sui tuoi dati…
5

Domande ambigue: Nova chiede prima di tirare a indovinare

Quando la tua domanda potrebbe essere mappata su più tabelle o colonne, Nova chiede chiarimenti invece di fare congetture.

Nova AI
Nova
PostgreSQL — multi-tenant
Mostrami tutti gli utenti
Utente
Nova
Ho trovato 3 tavoli che potrebbe corrispondere a “utenti”:
1utenti autenticati — 1.240 righe (account di accesso con email, ultimo accesso, ruolo)
2utenti_pubblici.app — 8.920 righe (profili delle app con nome, piano, org_id)
3account_utente legacy — 450 righe (obsoleto, migrato ad auth.users)
A quale tavolo ti riferisci? O dovrei unirmi? utenti autenticati con utenti_app per avere un quadro completo?
Unisci auth.users con app_users
Utente
Nova
1.240 righe x 5 colonne · 67 ms
e-mailnome e cognomepiano
[email protected]James ChenEnterprise
[email protected]Sarah ParkPro
[email protected]Mike TorresPro
+ 1.237 righe in più · Espandi
Aderisce tramite auth.users.id = app_users.auth_user_id. Tutto 1.240 account Restituito con i dati di accesso e del profilo combinati.
Chiedi a Nova qualsiasi cosa sui tuoi dati…

Cosa mostrano questi esempi sulla conversione del linguaggio naturale in SQL

Ogni demo sopra illustra un diverso modello di traduzione da NL a SQL che Nova gestisce automaticamente. La demo 1 mostra il caso più semplice: mappare una frase di filtro ("dalla California") a una clausola WHERE. Ciò che rende questo non banale è che Nova ha rilevato il stato La colonna utilizza abbreviazioni di due lettere, non i nomi completi degli stati: un dettaglio appreso dalla profilazione della colonna durante la scoperta dello schema. Un sistema di conversione testo-SQL ingenuo genererebbe DOVE stato = 'California' e restituiscono zero risultati.

La demo 2 si estende fino all'aggregazione. Parole come "totale", "media" e "conteggio" attivano rispettivamente le funzioni SOMMA, MEDIA e CONTA. La frase "per categoria" corrisponde a GROUP BY, e "ordinato dal più alto al più basso" corrisponde a ORDER BY DESC. Nova ha anche rilevato automaticamente che per rispondere a questa domanda era necessario unire tre tabelle — products, order_items e orders — cosa che ha fatto tracciando le relazioni di chiave esterna nello schema. Questo è il tipo di query che richiede 30 secondi per essere descritta in inglese, ma diversi minuti per essere scritta correttamente in SQL, soprattutto con strutture di tabelle non familiari.

La demo 3 evidenzia la consapevolezza del dialetto. La frase "ultimo trimestre" è un concetto di data che si mappa a SQL completamente diverso a seconda del motore del database. Su SQL Server, diventa DATEADD(TRIMESTRE, DATEDIFF(TRIMESTRE, 0, GETDATE()) - 1, 0). Su PostgreSQL, lo stesso intento produce date_trunc('trimestre', data_corrente - intervallo '3 mesi'). Su Snowflake, utilizza DATEADD('trimestre', -1, DATE_TRUNC('trimestre', CURRENT_DATE()))Nova genera automaticamente la variante corretta in base al tipo di database connesso. Questa generazione specifica per dialetto è ciò che distingue uno strumento di conversione da testo a SQL per la produzione da un chatbot basato sull'intelligenza artificiale per uso generico.

La demo 4 mostra Nova gestire una domanda analitica avanzata che richiede una CTE (Common Table Expression), una subquery per il calcolo della media e una funzione finestra RANK() — il tutto generato da una singola frase in inglese. La demo 5 mostra cosa succede quando la domanda è ambigua: invece di tirare a indovinare e potenzialmente interrogare la tabella sbagliata, Nova presenta le opzioni e chiede all'utente di scegliere. Questo passaggio di chiarimento previene la modalità di errore più comune nell'SQL generato dall'IA: nomi di tabelle o colonne errati che producono errori o risultati non corretti.

Perché la validazione è più importante della generazione

Generare codice SQL dal linguaggio naturale è solo metà del problema. La parte più difficile è assicurarsi che il codice SQL generato sia effettivamente corretto per il proprio database specifico. I modelli di intelligenza artificiale generici come ChatGPT o Claude possono scrivere codice SQL dall'aspetto plausibile, ma non conoscono i nomi effettivi delle tabelle, i tipi di colonna o le relazioni tra le tabelle. Fanno delle supposizioni. E le supposizioni falliscono silenziosamente: la query potrebbe essere eseguita ma restituire risultati errati perché ha effettuato un join sulla colonna sbagliata o ha filtrato una colonna che utilizza valori diversi da quelli previsti.

Nova risolve questo problema con una pipeline di convalida in quattro fasi che viene eseguita prima che ogni query raggiunga il database. In primo luogo, scopre il tuo schema reale: ogni tabella, colonna, tipo di dati e relazione di chiave esterna. In secondo luogo, profila i valori delle colonne per capire cose come se stato utilizza “CA” o “California”, sia stato Utilizza 0/1 o "attivo"/"inattivo" e i valori effettivi dell'enumerazione. In terzo luogo, traccia i percorsi di join utilizzando chiavi esterne reali anziché basarsi sulla somiglianza dei nomi delle colonne. In quarto luogo, convalida l'SQL finale tramite l'analisi sintattica con sqlglot e la corrispondenza approssimativa delle colonne con una soglia del 60% utilizzando rapidfuzz. Se una colonna a cui si fa riferimento non esiste o è scritta in modo errato, Nova lo rileva prima dell'esecuzione e lo corregge automaticamente oppure chiede di chiarirlo.

Database supportati per Text-to-SQL

Il motore di conversione del linguaggio naturale in SQL di Nova supporta dieci piattaforme di database: PostgreSQL, MySQL, SQL Server (Microsoft), MariaDB, SQLite, Oracle, Snowflake, Google BigQuery, DuckDB e Microsoft Access. Supporta inoltre sei connettori API: Stripe, Shopify, HubSpot, Google Analytics 4, Google Search Console e ShipStation, sincronizzando i loro dati in tabelle DuckDB locali che possono essere interrogate con SQL standard. Ogni database ha il proprio dialetto SQL con una sintassi diversa per date, funzioni stringa, identificatori, paginazione e gestione dei valori NULL. Nova genera automaticamente il dialetto corretto in base all'origine dati connessa, quindi non è mai necessario preoccuparsene. LIMITE vs SUPERIORE, virgolette inverse vs virgolette con parentesi quadre, oppure NVL vs COALESCEÈ persino possibile passare da un database all'altro durante una conversazione e Nova adatta di conseguenza l'output SQL.

Domande frequenti

Che cos'è il linguaggio naturale per SQL?
La conversione del linguaggio naturale in SQL (NL-to-SQL o text-to-SQL) è il processo che trasforma domande in linguaggio naturale in query SQL strutturate per database. I modelli di intelligenza artificiale analizzano l'intento della domanda, lo mappano allo schema del database e generano la sintassi SQL corretta, incluse le clausole SELECT, WHERE, JOIN, GROUP BY e ORDER BY. Nova va oltre, convalidando ogni query rispetto allo schema reale prima dell'esecuzione.
Quanto è accurato il codice SQL generato dall'intelligenza artificiale?
L'accuratezza dipende interamente dal fatto che l'IA abbia accesso allo schema reale del database. I chatbot generici come ChatGPT ipotizzano i nomi delle tabelle e spesso creano colonne inesistenti. Nova AI, invece, convalida ogni query confrontandola con i nomi effettivi delle tabelle, i tipi di colonna, i valori dei dati e le relazioni di chiave esterna attraverso una pipeline a 4 fasi, prima ancora che la query raggiunga il database.
L'intelligenza artificiale è in grado di gestire query SQL complesse con JOIN e subquery?
Sì. Nova genera JOIN multi-tabella tracciando le relazioni di chiave esterna nello schema, CTE (Common Table Expressions) per query analitiche, funzioni finestra come RANK() e ROW_NUMBER() e subquery nidificate per il filtraggio comparativo. Una singola frase in linguaggio naturale può produrre una query SQL di 15 righe con più join e aggregazioni.
L'intelligenza artificiale conosce la struttura del mio database?
Sì. Nova si connette al tuo database tramite Query Streams Agent, un servizio leggero che viene eseguito sulla tua rete. L'agente legge il tuo schema reale, inclusi ogni nome di tabella, tipo di colonna, vincolo di chiave esterna e profilo dati. Nova utilizza questi metadati per generare query accurate. I tuoi dati effettivi non lasciano mai la tua rete: solo i metadati dello schema vengono condivisi con l'IA.
Quali database supportano le query in linguaggio naturale?
Nova supporta 10 database: PostgreSQL, MySQL, SQL Server, MariaDB, SQLite, Oracle, Snowflake, BigQuery, DuckDB e Microsoft Access. Inoltre, interroga 6 piattaforme API (Stripe, Shopify, HubSpot, Google Analytics 4, Google Search Console, ShipStation) sincronizzando i relativi dati in tabelle DuckDB locali. Il dialetto SQL viene automaticamente adattato a ciascun motore.
Posso modificare il codice SQL generato da Nova?
Sì. Ogni query generata viene visualizzata con evidenziazione completa della sintassi e pulsanti interattivi per Copia, Esegui, Salva ed Espandi. È possibile modificare l'SQL prima di eseguirlo, rieseguire le query modificate o salvarle nella Libreria query per un utilizzo ripetuto in Microsoft Excel, Fogli Google o nel portale web. Le query salvate diventano risorse riutilizzabili che il team può eseguire senza conoscenze di SQL.

Introduzione alle query di database in linguaggio naturale

Configurare il linguaggio naturale per SQL con Nova richiede meno di cinque minuti. Crea un account gratuito su my.querystreams.comInstalla Query Streams Agent su qualsiasi macchina con accesso al database, aggiungi la tua origine dati e inizia a porre domande. L'agente crea una connessione crittografata solo in uscita: non sono necessarie modifiche al firewall, tunnel VPN o porte in entrata. Funziona su Windows, macOS e Linux, si aggiorna automaticamente e supporta più connessioni simultanee al database.

I crediti AI sono disponibili tramite abbonamenti mensili o acquisti una tantumNova è alimentato da un'IA avanzata: Query Streams seleziona automaticamente il provider ottimale per ogni query per fornire i migliori risultati. Qualsiasi query generata da Nova può essere salvata nella tua libreria di query e condivisa con i colleghi che la eseguono da lì. componente aggiuntivo Microsoft Excel o componente aggiuntivo Google Sheets — non è richiesta alcuna conoscenza di SQL da parte loro. Scopri di più su tutte le funzionalità di Nova su Pagina dedicata alle funzionalità di analisi dei dati di BI e IA.

Meta Descrizione: Dal linguaggio naturale a SQL: digita le domande in linguaggio naturale e ottieni codice SQL validato e specifico per il tuo dialetto per PostgreSQL, MySQL, SQL Server, Snowflake e altri 6 database. Guarda 5 esempi reali.

Categoria: Nova AI
Tag: Da linguaggio naturale a SQL, da testo a SQL, generatore SQL AI, da NL a SQL, query di database AI, Nova AI, Query Streams, PostgreSQL, MySQL, SQL Server, Snowflake, BigQuery, generatore di query AI, query di database in linguaggio naturale, convertitore da testo a SQL

Biografia dell'autore:
Il team Query Streams è composto da esperti di database, professionisti della sicurezza di rete e veterani del networking aziendale con oltre 25 anni di esperienza combinata nella gestione dei dati, nell'analisi e nello sviluppo di software sicuri.

Updated on 3 giugno 2026

Powered by BetterDocs