Structured Query Language (SQL) è il linguaggio di database più ampiamente implementato e sapere che è utile per chiunque sia coinvolto nella programmazione di computer o che utilizzi database per raccogliere e organizzare le informazioni.
SQL può essere utilizzato per condividere e gestire i dati, in particolare i dati che si trovano nei sistemi di gestione dei database relazionali, che includono dati organizzati in tabelle. Più file, ciascuno contenente tabelle di dati, possono anche essere correlati insieme da un campo comune. Utilizzando SQL, è possibile eseguire query, aggiornare e riorganizzare i dati, nonché creare e modificare lo schema (struttura) di un sistema di database e controllare l'accesso ai propri dati.
Gran parte di ciò suona come informazioni che possono essere compilate in un foglio di calcolo, come Microsoft Excel, ma SQL è progettato per compilare e gestire i dati in volumi molto più grandi. Mentre i fogli di calcolo possono diventare ingombranti con troppe informazioni che riempiono troppe celle, i database SQL possono gestire milioni o addirittura miliardi di celle di dati.
Utilizzando SQL, è possibile archiviare i dati su ogni cliente con cui la tua azienda ha mai lavorato, dai contatti chiave ai dettagli delle vendite. Quindi, ad esempio, se si desidera cercare per ogni cliente che ha speso almeno $ 5.000 con la propria attività nell'ultimo decennio, un database SQL potrebbe recuperare tali informazioni immediatamente.
Competenze SQL nella domanda
La maggior parte delle organizzazioni ha bisogno di qualcuno con conoscenze SQL. Secondo Gooroo, circa 20.000 di questi lavori sono pubblicizzati mensilmente, e il salario mediano per una posizione che richiede la conoscenza di SQL è di circa $ 84.000, a partire dal 2018.
Alcune posizioni che richiedono competenze SQL includono:
- Sviluppatore back-end: una persona in questa posizione gestisce il funzionamento interno delle applicazioni web, al contrario di uno sviluppatore front-end, che gestisce l'aspetto dell'applicazione e il modo in cui funziona per gli utenti. Gli sviluppatori di back-end lavorano sotto le assi del pavimento, per così dire, assicurandosi che l'applicazione sia progettata e funzioni correttamente.
- Database administrator (DBA): si tratta di qualcuno che è specializzato nell'assicurarsi che i dati vengano archiviati e gestiti correttamente ed efficientemente. I database sono più preziosi quando consentono agli utenti di recuperare rapidamente e facilmente le combinazioni desiderate di dati. Per quel lavoro, qualcuno deve assicurarsi che tutti i dati siano archiviati correttamente.
- Analista dei dati: qualcuno in questa posizione analizza i dati, forse alla ricerca di tendenze rilevanti in un particolare settore. Un analista potrebbe essere presentato con una particolare domanda e con il compito di trovare la risposta. Un semplice esempio potrebbe includere l'identificazione dei clienti che storicamente spendono di più nella pubblicità durante il terzo trimestre di un anno fiscale. Tale conoscenza consentirebbe a un reparto vendite di indirizzare efficacemente i clienti al momento giusto.
- Scienziato dei dati: si tratta di una posizione molto simile a quella di un analista di dati, ma gli scienziati di dati in genere hanno il compito di gestire i dati in volumi molto più grandi e di accumularli a velocità molto più elevate.
MySQL
Il software comune utilizzato per i server SQL include MySQL di Oracle, forse il programma più popolare per la gestione dei database SQL. MySQL è un software open-source, il che significa che è gratuito ed è importante per gli sviluppatori web perché gran parte del Web e così tante applicazioni sono costruite su database. Ad esempio, un programma musicale come iTunes memorizza la musica per artista, canzone, album, playlist e altro. Come utente, puoi cercare la musica con uno qualsiasi di questi parametri e altro per trovare ciò che stai cercando. Per realizzare un'app in questo modo, è necessario un software per gestire il database SQL, e questo è ciò che fa MySQL.
Storia di SQL
Nel 1969, il ricercatore IBM Edgar F. Codd definì il modello di database relazionale, che divenne la base per lo sviluppo del linguaggio SQL. Questo modello è basato su informazioni comuni (o "chiavi") associate a vari dati. Ad esempio, un nome utente potrebbe essere associato a un nome effettivo e un numero di telefono.
Pochi anni dopo, IBM ha iniziato a lavorare su un nuovo linguaggio per i sistemi di gestione di database relazionali basati sulle scoperte di Codd. Il linguaggio era originariamente chiamato SEQUEL, o Structured English Query Language. Doppiato System / R, il progetto ha subito alcune implementazioni e revisioni e il nome della lingua è cambiato diverse volte prima di arrivare finalmente su SQL.
Dopo aver iniziato i test nel 1978, IBM ha iniziato a sviluppare prodotti commerciali, tra cui SQL / DS (1981) e DB2 (1983). Altri venditori hanno seguito l'esempio, annunciando le proprie offerte commerciali basate su SQL. Tra questi, Oracle, che ha pubblicato il suo primo prodotto nel 1979, Sybase e Ingres.
Apprendimento di SQL
In genere è più facile per i principianti imparare l'SQL che per loro imparare linguaggi di programmazione come Java, C ++, PHP o C #.
Diverse risorse online, tra cui esercitazioni gratuite e corsi a distanza a pagamento, sono disponibili per coloro che hanno poca esperienza di programmazione ma desiderano imparare SQL. I corsi universitari formali universitari o comunitari forniranno inoltre una comprensione più approfondita della lingua.
Alcune delle esercitazioni gratuite includono W3Schools SQL Tutorial, SQLcourse.com e Codecademy's Learn SQL e un corso sull'analisi delle metriche di business SQL.
Le opzioni per i corsi di formazione a distanza a pagamento includono l'introduzione di IWA (International Webmasters Association) a SQL (Using Access) o Introduction to SQL (Using MySQL). I corsi SQL di IWA durano solo quattro settimane, ma la presenza di istruttori e incarichi settimanali li rende più strutturati dei tutorial di autoapprendimento.
Libri utili su SQL per principianti includono "SQL: A Beginner's Guide" e "SQL in a Nutshell".