Imparare a Programmare Imparare a Programmare
  • Capitoli
    • 1. Introduzione
    • 2. Cos'è l'SQL? É facile da imparare?
    • 3. Chi usa l'SQL?
    • 4. È richiesto nel mondo del lavoro?
    • 5. Risorse
    • 6. Ultimo consiglio
  • 1. Introduzione
  • 2. Cos'è l'SQL? É facile da imparare?
  • 3. Chi usa l'SQL?
  • 4. È richiesto nel mondo del lavoro?
  • 5. Risorse
  • 6. Ultimo consiglio
  • 1. Introduzione
  • 2. Cos'è l'SQL? É facile da imparare?
  • 3. Chi usa l'SQL?
  • 4. È richiesto nel mondo del lavoro?
  • 5. Risorse
  • 6. Ultimo consiglio
Programmare in SQL

Programmare in SQL

Tutto quello che vorresti sapere per iniziare con l'SQL e i Database.

La prima cosa che devi sapere sul linguaggio SQL è che NON è un linguaggio di programmazione, la seconda cosa che devi sapere è che l'SQL è il linguaggio più richiesto al mondo!

I nquesto articolo voglio rispondere a tutti i maggiori dubbi e domande di chi iniziare ad informarsi sui Database e sul linguaggio SQL, sto parlando di domande come:

  • L'SQL è semplice da imparare?
  • In quali contesti/aziende viene usato l'SQL?
  • Quanto è richiesto nel mondo del lavoro?
  • Quali corsi o tutorial seguire per iniziare?

Io sono pronto! Goditi questo viaggio nel mondo dei Database!

Alberto OllaAlberto Olla
Capitolo 1

Introduzione

Cosa sono i Database

Cosa sono i database?

Prima di parlare del linguaggio SQL è importante capire cosa sono i database.

Di solito vengono definiti come: "Archivi digitali di dati"

Ma che significa?

Iniziamo col capire cosa sono i dati.

I dati sono delle informazioni che il nostro programma ha bisogno di memorizzare per poter funzionare e per mantenere una sorta di storico.

Pensa a Facebook, quali informazioni dovremmo salvare per farlo funzionare? Sicuramente i dati del login, la lista degli amici, i post, le richieste di amicizia, le informazioni del profilo, le preferenze e così via.

Bene, tutti questi dati sono salvati nel database.
In poche parole,  il database è il sistema che gestisce e salva i dati. Beh in realtà non li salva e basta ma ci permette di effettuare quattro operazioni fondamentali chiamate CRUD: creazione, lettura, modifica e cancellazione dei dati.

Esistono due categorie di database:

  • I database relazionali o SQL: rappresentano i dati come delle tabelle, che sono tutte collegate tra loro. Per eseguire le operazioni sui dati usiamo il linguaggio SQL.
  • I i database non relazionali: rappresentano i dati in diversi modi. Questi database sono chiamati anche NoSQL, ma non farti ingannare dal nome. Infatti NoSQL sta per “Not Only SQL” tradotto in italiano “Non solo SQL”, perchè usano linguaggi diversi, anche se alcuni supportano anche l’SQL

I database sono essenziali e sono usati in moltissimi settori: data mining, programmazione, giochi,...insomma, ogni volta che abbiamo la necessità di memorizzare delle informazioni.

Capitolo 2

Cos'è l'SQL? É facile da imparare?

SQL è facile da imparare?

La risposta alla seconda domanda è  ASSOLUTAMENTE SI.

Ricapitolando, per effettuare le operazioni nei database relazionali, e in alcuni non relazionali, usiamo il linguaggio SQL.

SQL sta per “Structured Query Language” ed è un linguaggio utilizzato per effettuare delle interrogazioni al database.

Attenzione però, non è un linguaggio di programmazione ma un linguaggio di interrogazione!

Ma cosa sono le interrogazioni? Sono delle domande, o query, che vengono fatte al database per eseguire le operazioni del CRUD.

Quali utenti hanno questa email?

Esempio codice SQL
Esempio di codice SQL (query o interrogazione al database)

Conoscere l’SQL significa essere in grado di usare la maggior parte dei database relazionali.

Non pensare per questo che sia difficile da imparare, al contrario. È un linguaggio molto semplice che viene insegnato anche alle persone alle prime armi e che non conoscono la programmazione.

Capitolo 3

Chi usa l'SQL?

Settori e Aziende che usano l'SQL

Praticamente tutti.

SQL o NoSQL? Da cosa dipende la scelta del database, e di conseguenza del linguaggio da usare?

I database relazionali, o SQL, si adattano al 95% dei casi. A prescindere dalla tipologia dell’azienda e dal settore in cui opera:

  • gaming,
  • e-commerce,
  • sanità,
  • sicurezza,
  • settore pubblico,
  • etc.

Nel restante 5% dei casi, quando le aziende hanno bisogno di gestire grosse moli di dati, sono usati i database NoSQL. Un tipico esempio sono le grosse aziende come Facebook, YouTube e Google.


Più nel dettaglio, i database relazionali sono perfetti nella gran parte delle situazioni, ma quando si hanno molti dati, molte tabelle e molte relazioni iniziamo ad avere problemi di efficienza. Questo significa che un utente deve aspettare anche parecchio tempo prima di vedere quello che ha chiesto (ad esempio i dati del suo profilo, o semplicemente fare il login).

In questo caso entrano in gioco i database NoSQL. Ne esistono diversi tipi, ciascuno pensato per risolvere un particolare problema. Ad esempio Redis, il database NoSQL key-value più famoso, permette delle letture molto veloci. Infatti viene usato da Facebook e Google.


Esistono diversi database relazionali, i più usati sono:

  • MySQL
  • MariaDB
  • Oracle

MySQL e MariaDB sono i database open source, quindi gratuiti, più usati in assoluto. Mentre Oracle è il database commerciale più usato, questo significa che la sua licenza è a pagamento.
Solitamente, Oracle viene usato da grosse aziende che decidono di pagare per la licenza e che devono gestire grosse moli di dati. Ha qualche limitazione nelle funzionalità e spesso problemi di performance, infatti risulta più lento rispetto agli altri due. Diciamo che, tra i tre la maggior parte delle volte viene usato MySQL.


Quindi, la cosa importante quando si sviluppa un progetto non è scegliere se usare l’SQL o meno, ma scegliere quale database si adatta meglio alle esigenze del progetto e poi in base al database scelto useremo il linguaggio corretto. Ovviamente, come abbiamo già detto nel 95% dei casi andrai ad usare database relazionali e quindi l’SQL.

Capitolo 4

È richiesto nel mondo del lavoro?

Lavori e professioni SQL

L’SQL è il linguaggio più richiesto nel mondo del lavoro.

In qualsiasi settore tu voglia lavorare conoscere l’SQL ti darà più possibilità di entrarci.

Richiesta lavoro SQL
Fonte: Burning Glass List

Tra i lavori più richiesti e più pagati ci sono:

  • Data Analyst e Data Scientist: in questo caso conoscere l’SQL è fondamentale. Viene usato per l’accesso, la pulizia e l’analisi dei dati. I Data Analyst devono essere bravi a riconoscere degli schemi su enormi quantità di dati.
  • Database Developer: devono gestire e creare il database e di solito interagiscono con i programmatori. Per questo lavoro sono richieste ottime conoscenze di SQL.
  • Database Administrator: si occupa della gestione del database a livello architetturale, quindi gestisce l’installazione sui server, le performance, la sicurezza, la creazione degli utenti e dei privilegi, e così via.
  • Sviluppatori Software: devono avere una conoscenza dell’SQL per essere in grado di eseguire query, sia semplici che complesse.
Capitolo 5

Risorse

Libri, tutorial e corsi per imparare l'SQL

Bene, a questo punto è arrivato il momento di studiare e imparare finalmente il linguaggio SQL!


Ho raccolto una lista di materiali che potrebbero esserti utili.

Libri ed ebook (inglese e italiano)

Si trovano tantissimi libri sull'SQL. Per darti una mano, ho selezionato quelli che ritenevo i migliori per argomenti trattatati e per livello di difficoltà.

  • Learning SQL: Generate, Manipulate, and Retrieve Data (Inglese) 
  • SQL - quello che i libri non dicono (italiano)

Corsi online (inglese e italiano)

Tra i corsi che puoi trovare online ho trovato questi particolarmente interessanti.

  • Introduction to Structured Query Language (SQL): è un corso in inglese di livello intermedio. Una grossa pecca però è che non tratta la parte dei database ma si limita a spiegarti come fare le query.
  • SQL per professionisti: è il migliore corso di SQL in italiano per chi parte da zero. Infatti, parte dalle basi (come fare query semplici) fino ad arrivare agli argomenti più complessi: transazioni, sicurezza, indici, modellazione del database e tanto altro. All'interno del corso c'è anche una parte di cui mi sono occupato personalmente.
Capitolo 6

Ultimo consiglio

Imparare linguaggio SQL

Il mio consiglio è quello di imparare l’SQL. Non solo perchè è il linguaggio più richiesto ma è fondamentale conoscerlo per moltissimi lavori.

Vuoi imparare a programmare?

Ho preparato una serie di video lezioni che puoi ricevere gratuitamente.


Alberto Olla Insegnante del Corso

Ciao, io sono Alberto Olla. Faccia sorridente

Mi occupo di programmazione da quasi 10 anni e in tutto questo tempo ho lavorato sempre con passione e una grande voglia di imparare. Non ho mai smesso di migliorare me stesso e ho sperimentato nuove tecnologie e nuovi linguaggi alla ricerca della soluzione migliore per i miei progetti e per quelli dei miei clienti.

Ora che ho una certa esperienza vorrei insegnare anche a te quello che ho imparato nei miei anni di lavoro.

Non devi fare altro che scrivere qui sopra il tuo indirizzo email e ti invierò subito la prima lezione!

Alberto Olla firma
altre guide popolari simili

Programmare in C: miglior linguaggio per iniziare?

Tutto quello che devi sapere per cominciare

Programmare in Javascript: miglior linguaggio per iniziare?

Scopri tutte le potenzialità del linguaggio

Miglior linguaggio di programmazione per iniziare?

Consigli e analisi nella scelta del primo linguaggio

  • Corso di Programmazione
  • Corso Java
  • Privacy