SlideShare uma empresa Scribd logo
1 de 21
Il linguaggio SQL
2




Structured

        Query

                 Language
SQL
Operazioni
                3




 Definizione dei dati
 Modifica dei dati
 Ricerca dei dati
 Ordinamento dei dati


SQL
Definizione dei dati (1/8)
                         4

 Creazione di tabelle




CREATE TABLE nome_tabella
       (nome_colonna1 tipo1 {vincolo},

          nome_colonnan tipon {vincolo})




SQL
Definizione dei dati (2/8)
                        5

 Possibili vincoli (clausole)



        PRIMARY KEY
        FOREIGN KEY
        UNIQUE
        NOT NULL
SQL
Definizione dei dati (3/8)
                           6

 Possibili tipi di dati
         SMALLINT
         INTEGER
         DECIMAL (p, q)
         FLOAT (p)
         CHAR (n)
         VARCHAR (n)
         DATE
         TIME

SQL
Definizione dei dati (4/8)
                  7

 Esempio


CREATE TABLE Dipartimenti
   (Dip INT NOT NULL UNIQUE ,
    Descrizione      CHAR(30),
    Località         CHAR(20),
    PRIMARY KEY (Dip));




SQL
Definizione dei dati (5/8)
                            8

CREATE TABLE Velisti (vid INTEGER,
                      vnome CHAR(20),
                      età INTEGER,
                      PRIMARY KEY (vid))

                                           RELAZIONI
CREATE TABLE Barche (bid INTEGER,
                     bnome CHAR(20),
                     colore CHAR(20),
                     PRIMARY KEY (bid))

CREATE TABLE Prenotazioni (vid INTEGER,
                       bid INTEGER,
                       giorno DATE,
                       FOREIGN KEY vid REFERENCES Velisti,
                       FOREIGN KEY bid REFERENCES Barche)

SQL
Definizione dei dati (6/8)
                          9

 Definizione di indici


CREATE INDEX nome_indice
       ON nome_tabella (nome_colonna)

Esempio:

CREATE INDEX indicevelisti
        ON Velisti (vnome)

SQL
Definizione dei dati (7/8)
                     10

 Modifica dello schema
ALTER TABLE identificatore_tabella
        ADD nome_colonna tipo

Esempio

ALTER TABLE Dipartimenti
        ADD Provincia CHAR (2)


SQL
Definizione dei dati (8/8)
                   11

 Cancellazione


ALTER TABLE nome_tabella DROP
 nome_colonna

DROP TABLE nome_tabella

Esempi:
ALTER TABLE Velisti DROP età
DROP TABLE Velisti

SQL
Modifica dei dati (1/3)
                      12

 Inserimento di record


INSERT INTO nome_tabella
    VALUES (costante1, costante2,…)

Esempio:
INSERT INTO Velisti
    VALUES (23, “Francesco”, 41)


SQL
Modifica dei dati (2/3)
                       13

 Modifica di record
UPDATE nome_tabella
  SET nome_colonna = espressione
    {WHERE condizione}

Esempio :
UPDATE Velisti
   SET età = età + 1


SQL
Modifica dei dati (3/3)
                   14

 Cancellazione


DELETE
      FROM nome_tabella
          {WHERE condizione}
Esempio :
DELETE
      FROM Velisti
           WHERE età=24

SQL
Ricerca dei dati (1/4)
                  15

SELECT nome_colonna
       FROM nome_tabella
             {WHERE condizione}

Esempio:
SELECT vnome FROM Velisti
          WHERE età>18




SQL
Ricerca dei dati (2/4)
                        16

Funzioni predefinite:

                  COUNT
                  MIN
                  MAX
                  SUM
                  AVG




SQL
Ricerca dei dati (3/4)
                    17

Esempi:

SELECT COUNT (città) FROM Fornitori

SELECT MAX (Prezzo), MIN (Prezzo) FROM
 Prodotti

SELECT Nome, Prezzo FROM Prodotti
      WHERE Prezzo < (SELECT AVG
 (Prezzo)
                       FROM Prodotti)
SQL
Ricerca dei dati (4/4)
                      18

 Generazione di tabelle


SELECT listacampi INTO nuovatabella
      FROM tabellaorigine
              {WHERE condizione}

SELECT Cognome, Nome INTO Maschi
       FROM Allievi
            WHERE sesso = „M‟

SQL
Ordinamento e raggruppamento (1/3)
                      19

 Clausola ORDER BY
SELECT nome_colonna FROM
 nome_tabella
         ORDER BY nome_colonna

 Clausola GROUP BY
SELECT nome_colonna FROM nome_tabella
         GROUP BY nome_colonna


SQL
Ordinamento e raggruppamento (2/3)
                   20

Esempi :

SELECT Nome, Prezzo FROM Prodotti
           ORDER BY Nome

SELECT Cognome, Nome, Città FROM Allievi
            GROUP BY Città




SQL
Ordinamento e raggruppamento (3/3)
                    21

 Clausola HAVING


Esempio:

SELECT Cognome, Nome, Città FROM Allievi
            GROUP BY Città
            HAVING COUNT (Città) >3




SQL

Mais conteúdo relacionado

Mais procurados

Semantic Technologies for Big Data
Semantic Technologies for Big DataSemantic Technologies for Big Data
Semantic Technologies for Big Data
Marin Dimitrov
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XML
yht4ever
 

Mais procurados (20)

Database relazionali
Database relazionaliDatabase relazionali
Database relazionali
 
Learn Python Programming | Python Programming - Step by Step | Python for Beg...
Learn Python Programming | Python Programming - Step by Step | Python for Beg...Learn Python Programming | Python Programming - Step by Step | Python for Beg...
Learn Python Programming | Python Programming - Step by Step | Python for Beg...
 
XML Schemas
XML SchemasXML Schemas
XML Schemas
 
Tipos de Datos de Oracle
Tipos de Datos de OracleTipos de Datos de Oracle
Tipos de Datos de Oracle
 
Semantic Technologies for Big Data
Semantic Technologies for Big DataSemantic Technologies for Big Data
Semantic Technologies for Big Data
 
Normalização de dados - Primeira forma normal
Normalização de dados - Primeira forma normalNormalização de dados - Primeira forma normal
Normalização de dados - Primeira forma normal
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XML
 
Xml presentation
Xml presentationXml presentation
Xml presentation
 
Presentation OntoCommons Workshop March 2021
Presentation OntoCommons Workshop March 2021Presentation OntoCommons Workshop March 2021
Presentation OntoCommons Workshop March 2021
 
Html ppt
Html pptHtml ppt
Html ppt
 
Integridad referencial
Integridad referencialIntegridad referencial
Integridad referencial
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
 
Html
HtmlHtml
Html
 
Xml
Xml Xml
Xml
 
Python Flow Control
Python Flow ControlPython Flow Control
Python Flow Control
 
Xml 215-presentation
Xml 215-presentationXml 215-presentation
Xml 215-presentation
 
Html,javascript & css
Html,javascript & cssHtml,javascript & css
Html,javascript & css
 
O’FAIRe: Ontology FAIRness Evaluator in the AgroPortal semantic resource rep...
O’FAIRe: Ontology FAIRness Evaluator in theAgroPortal semantic resource rep...O’FAIRe: Ontology FAIRness Evaluator in theAgroPortal semantic resource rep...
O’FAIRe: Ontology FAIRness Evaluator in the AgroPortal semantic resource rep...
 
Data Wrangling
Data WranglingData Wrangling
Data Wrangling
 
#6 Operadores de Comparação e Lógicos no MongoDB
#6   Operadores de Comparação e Lógicos no MongoDB#6   Operadores de Comparação e Lógicos no MongoDB
#6 Operadores de Comparação e Lógicos no MongoDB
 

Destaque (7)

Database introduzione
Database introduzioneDatabase introduzione
Database introduzione
 
Introduzione al SQL e ai database
Introduzione al SQL e ai databaseIntroduzione al SQL e ai database
Introduzione al SQL e ai database
 
SQL Unità 1 linguaggio DDL; DML, funzioni di aggregazione
SQL Unità 1 linguaggio DDL; DML, funzioni di aggregazioneSQL Unità 1 linguaggio DDL; DML, funzioni di aggregazione
SQL Unità 1 linguaggio DDL; DML, funzioni di aggregazione
 
Database - progettazione
Database - progettazioneDatabase - progettazione
Database - progettazione
 
Database, concetti di base
Database, concetti di baseDatabase, concetti di base
Database, concetti di base
 
SQL : introduction
SQL : introductionSQL : introduction
SQL : introduction
 
SQL Tutorial - Basic Commands
SQL Tutorial - Basic CommandsSQL Tutorial - Basic Commands
SQL Tutorial - Basic Commands
 

Semelhante a Il linguaggio SQL (9)

Basi Di Dati 03
Basi Di Dati 03Basi Di Dati 03
Basi Di Dati 03
 
Creare tabelle sul database MySql
Creare tabelle sul database MySqlCreare tabelle sul database MySql
Creare tabelle sul database MySql
 
Sql 1
Sql 1Sql 1
Sql 1
 
primi comandi SQL con Mysql
primi comandi SQL con Mysqlprimi comandi SQL con Mysql
primi comandi SQL con Mysql
 
IBM i db2 udb vs Microsoft SQL Server
IBM i db2 udb vs Microsoft SQL ServerIBM i db2 udb vs Microsoft SQL Server
IBM i db2 udb vs Microsoft SQL Server
 
C3 Ddl1
C3 Ddl1C3 Ddl1
C3 Ddl1
 
MySQL
MySQLMySQL
MySQL
 
MySQL Database
MySQL DatabaseMySQL Database
MySQL Database
 
Sql 3
Sql 3Sql 3
Sql 3
 

Mais de Francesco Zoino (8)

Un fab lab nella nostra scuola
Un fab lab nella nostra scuolaUn fab lab nella nostra scuola
Un fab lab nella nostra scuola
 
Robotica educativa
Robotica educativaRobotica educativa
Robotica educativa
 
Informatica di base
Informatica di baseInformatica di base
Informatica di base
 
Tecnologie per la didattica
Tecnologie per la didatticaTecnologie per la didattica
Tecnologie per la didattica
 
Personal computer
Personal computerPersonal computer
Personal computer
 
Fourier series expansion
Fourier series expansionFourier series expansion
Fourier series expansion
 
Reti di computer
Reti di computerReti di computer
Reti di computer
 
Blog
BlogBlog
Blog
 

Último

Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 

Último (19)

LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxLorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
 
Quadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceoQuadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceo
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 
Descrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptxDescrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptx
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxLorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
 
Presentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione CivicaPresentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione Civica
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
Scrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibileScrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibile
 
descrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptxdescrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptx
 
Aristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptxAristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptx
 
discorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptxdiscorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptx
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxLorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
 
Lorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxLorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptx
 

Il linguaggio SQL

  • 2. 2 Structured Query Language SQL
  • 3. Operazioni 3  Definizione dei dati  Modifica dei dati  Ricerca dei dati  Ordinamento dei dati SQL
  • 4. Definizione dei dati (1/8) 4  Creazione di tabelle CREATE TABLE nome_tabella (nome_colonna1 tipo1 {vincolo}, nome_colonnan tipon {vincolo}) SQL
  • 5. Definizione dei dati (2/8) 5  Possibili vincoli (clausole) PRIMARY KEY FOREIGN KEY UNIQUE NOT NULL SQL
  • 6. Definizione dei dati (3/8) 6  Possibili tipi di dati SMALLINT INTEGER DECIMAL (p, q) FLOAT (p) CHAR (n) VARCHAR (n) DATE TIME SQL
  • 7. Definizione dei dati (4/8) 7  Esempio CREATE TABLE Dipartimenti (Dip INT NOT NULL UNIQUE , Descrizione CHAR(30), Località CHAR(20), PRIMARY KEY (Dip)); SQL
  • 8. Definizione dei dati (5/8) 8 CREATE TABLE Velisti (vid INTEGER, vnome CHAR(20), età INTEGER, PRIMARY KEY (vid)) RELAZIONI CREATE TABLE Barche (bid INTEGER, bnome CHAR(20), colore CHAR(20), PRIMARY KEY (bid)) CREATE TABLE Prenotazioni (vid INTEGER, bid INTEGER, giorno DATE, FOREIGN KEY vid REFERENCES Velisti, FOREIGN KEY bid REFERENCES Barche) SQL
  • 9. Definizione dei dati (6/8) 9  Definizione di indici CREATE INDEX nome_indice ON nome_tabella (nome_colonna) Esempio: CREATE INDEX indicevelisti ON Velisti (vnome) SQL
  • 10. Definizione dei dati (7/8) 10  Modifica dello schema ALTER TABLE identificatore_tabella ADD nome_colonna tipo Esempio ALTER TABLE Dipartimenti ADD Provincia CHAR (2) SQL
  • 11. Definizione dei dati (8/8) 11  Cancellazione ALTER TABLE nome_tabella DROP nome_colonna DROP TABLE nome_tabella Esempi: ALTER TABLE Velisti DROP età DROP TABLE Velisti SQL
  • 12. Modifica dei dati (1/3) 12  Inserimento di record INSERT INTO nome_tabella VALUES (costante1, costante2,…) Esempio: INSERT INTO Velisti VALUES (23, “Francesco”, 41) SQL
  • 13. Modifica dei dati (2/3) 13  Modifica di record UPDATE nome_tabella SET nome_colonna = espressione {WHERE condizione} Esempio : UPDATE Velisti SET età = età + 1 SQL
  • 14. Modifica dei dati (3/3) 14  Cancellazione DELETE FROM nome_tabella {WHERE condizione} Esempio : DELETE FROM Velisti WHERE età=24 SQL
  • 15. Ricerca dei dati (1/4) 15 SELECT nome_colonna FROM nome_tabella {WHERE condizione} Esempio: SELECT vnome FROM Velisti WHERE età>18 SQL
  • 16. Ricerca dei dati (2/4) 16 Funzioni predefinite: COUNT MIN MAX SUM AVG SQL
  • 17. Ricerca dei dati (3/4) 17 Esempi: SELECT COUNT (città) FROM Fornitori SELECT MAX (Prezzo), MIN (Prezzo) FROM Prodotti SELECT Nome, Prezzo FROM Prodotti WHERE Prezzo < (SELECT AVG (Prezzo) FROM Prodotti) SQL
  • 18. Ricerca dei dati (4/4) 18  Generazione di tabelle SELECT listacampi INTO nuovatabella FROM tabellaorigine {WHERE condizione} SELECT Cognome, Nome INTO Maschi FROM Allievi WHERE sesso = „M‟ SQL
  • 19. Ordinamento e raggruppamento (1/3) 19  Clausola ORDER BY SELECT nome_colonna FROM nome_tabella ORDER BY nome_colonna  Clausola GROUP BY SELECT nome_colonna FROM nome_tabella GROUP BY nome_colonna SQL
  • 20. Ordinamento e raggruppamento (2/3) 20 Esempi : SELECT Nome, Prezzo FROM Prodotti ORDER BY Nome SELECT Cognome, Nome, Città FROM Allievi GROUP BY Città SQL
  • 21. Ordinamento e raggruppamento (3/3) 21  Clausola HAVING Esempio: SELECT Cognome, Nome, Città FROM Allievi GROUP BY Città HAVING COUNT (Città) >3 SQL