Appunti su SQL. Query Language. Comando Select

Размер: px
Начинать показ со страницы:

Download "Appunti su SQL. Query Language. Comando Select"

Транскрипт

1 Appunti su SQL Query Language... 1 Comando Select... 1 Select con campi calcolati e order By... 4 campi calcolati Sintassi generale:... 4 order By Sintassi generale:... 4 Select con Join (due tabelle)... 5 Select con Join (3 tabelle)... 7 Select con Join, Where, campi calcolati e order By... 9 Select con funzioni aggregazione (SUM, COUNT, AVG, ) e raggruppamento (GROUP BY) DML (Data Manipulation Language) Insert ) Insert semplice (SCONSIGLIATO vivamente!): ) Insert : ) Insert mediante select: DDL (Data Definition Language) Create Database Create Table Create View Alter Table Drop Table Query Language Comando Select Il comando Select è l'unico comando di interrogazione (QL Query Lanquage) di SQL, ma la sua potenza espressiva è tale da poter realizzare in poche righe interrogazioni che in altri linguaggi richiederebbero molte pagine di codice. Il risultato del comando è una tabella temporanea (un insieme di record che non è salvato su disco). La select prevede molte clausole (particolari componenti del comando come Where ) che la rendono molto flessibile e potente. La sintassi nella forma più semplice è: SELECT <elenco campi> FROM <nome tabella> Dove <elenco campi> è l'elenco dei campi da estrarre (separati tra loro con una virgola) oppure per selezionare tutti i campi SELECT * <nome tabella> è il nome della tabella a cui ci si riferisce La sintassi nella forma più semplice ma con la clausola WHERE è: SELECT <elenco campi> FROM <nome tabella> WHERE <condizione> Quindi l'elenco dei campi dopo il SELECT è quello delle colonne che si vuole ottenere in uscita. In pratica viene qui realizzata la proiezione. La tabella dopo il FROM è quella da cui provengono i dati. 1

2 La condizione dopo WHERE è quella che selezionerà le righe o record da inserire nella tabella di uscita. Esempio: data le tabelle Anag CF_PK Nome Cognome NomeCittaFK Indirizzo Num_Civico RSSL Aldo Rossi Treviso c.so Popolo 15 FRLB Biagio Furlan Lollove via Dante 3 BNCC Carlo Bianchi Treviso via C.Battisti 2 VNLD Dario Vianello Venezia S.Marco 4202 BNCN Enrico Bianchi Venezia Cannaregio 4321 Citta NomePK Regione NumAb Lollove Sardegna Treviso Veneto 750 Venezia Veneto 32 Selezione dei soli residenti a Treviso e limitatamente al nome e all'indirizzo completo; comando SQL: SELECT Nome, Indirizzo, Num_Civico WHERE NomeCittaFK ='Treviso' Nome Indirizzo Num_Civico Aldo c.so Popolo 15 Carlo via C.Battisti 2 Selezione dei cittadini che abbiano cognome Bianchi e di quelli che abitino a Venezia comando SQL SELECT * WHERE (Cognome = Bianchi ) OR (NomeCittaFK = Venezia ) CF_PK Nome Cognome NomeCittaFK Indirizzo Num_Civico BNCC Carlo Bianchi Treviso via C.Battisti 2 VNLD Dario Vianello Venezia S.Marco 4202 BNCN Enrico Bianchi Venezia Cannaregio 4321 Selezione dei cittadini che abitino a Venezia e si chiamino Bianchi comando SQL SELECT * WHERE (Cognome = Bianchi ) AND (NomeCittaFK = Venezia ) CF_PK Nome Cognome Citta Indirizzo Num_Civico BNCN Enrico Bianchi Venezia Cannaregio

3 3

4 Select con campi calcolati e order By campi calcolati Sintassi generale: (evidenziamo il campo calcolato in celeste) SELECT, <espressione> AS <nome-campo-calcolato> FROM <nome tabella> Evidenziamo nell esempio autoesplicativo (spero) il campo calcolato in celeste SELECT Cognome, Nome, Indirizzo & n & Num_Civico AS IndirizzoCompleto Otterremo Cognome Nome IndirizzoCompleto Bianchi Carlo via C.Battisti n 2 Furlan Biagio via Dante n 3 Rossi Aldo c.so Popolo n 15 Vianello Dario S.Marco n 4202 Bianchi Enrico Cannaregio n 4321 order By Sintassi generale: Evidenziamo l ordinamento in verde a sinistra su un solo campo, a destra su più campi SELECT <elenco campi> FROM <nome tabella> ORDER BY <nome-campo> [DESC ASC] SELECT Cognome, Nome, Indirizzo ORDER BY Cognome Otterremo i record ordinate per cognome: Cognome Nome Indirizzo Bianchi Bianchi Furlan Rossi Vianello Enrico Cannaregio Carlo via C.Battisti Biagio via Dante Aldo c.so Popolo Dario S.Marco Se volessimo ordinare in ordine decrescente: SELECT Cognome, Nome, Indirizzo ORDER BY Cognome DESC Otterremo: Cognome Nome Indirizzo Vianello Rossi Furlan Bianchi Bianchi Dario S.Marco Aldo c.so Popolo Biagio via Dante Enrico Cannaregio Carlo via C.Battisti SELECT <elenco campi> FROM <nome tabella> ORDER BY <elenco campi> [DESC ASC] Se volessimo, a parità di cognome, ordinare per nome scriveremo SELECT Cognome, Nome, Indirizzo ORDER BY Cognome, Nome Ottenendo: Cognome Nome Indirizzo Bianchi Bianchi Furlan Rossi Carlo via C.Battisti Enrico Cannaregio Biagio via Dante Aldo c.so Popolo Vianello Dario S.Marco Dove Bianchi Carlo precede Bianchi Enrico 4

5 Select con Join (due tabelle) Quando si selezionano i dati da 2 o più tabelle è OBBLIGATORIO, per ottenere dati significativi, specificare il legame fra i record delle tabelle differenti Tale legame si specifica tramite il costrutto JOIN (SQL standard) o INNER JOIN (in MsAccess) attraverso il quale si evidenziano i campi delle due tabelle che devono avere i valori uguali come evidenziato nell esempio. Selezione dei soli residenti in Veneto e limitatamente al cognome, indirizzo, città e numero relativi abitanti; comando SQL: SELECT Anag.Cognome, Anag.Indirizzo, CittaPK.Nome as Città, Citta.NumAb JOIN Citta ON (Anag. NomeCittaFK = Citta.NomePK) WHERE Regione='Veneto' Cognome Indirizzo Città NumAb Rossi c.so Popolo Treviso 750 Bianchi via C.Battisti Treviso 750 Vianello S.Marco Venezia 32 Bianchi Cannaregio Venezia 32 5

6 consideriamo (nei prossimi esempi) il DB di ACCESS IndagineMercato.mdb. Prodotti CodiceProdotto Descrizione CP-01 Prodotto X CP-02 Prodotto Y Nazioni CodiceNazione NomeNazione Abitanti CN-01 Nazione A CN-02 Nazione B CN-03 Nazione C CN-04 Nazione D Quantita CodiceProdotto CodiceNazione QuantitaProdotta QuantitaConsumata CP-01 CN CP-01 CN CP-01 CN CP-01 CN CP-02 CN CP-02 CN CP-02 CN CP-02 CN Altro esempio: si vuole ottenere Codice della nazione, descrizione e codice del prodotto e quantità prodotta di tutte le nazioni SELECT CodiceNazione, Descrizione, Quantita.CodiceProdotto, QuantitaProdotta FROM Prodotti INNER JOIN Quantita ON Prodotti.CodiceProdotto = Quantita.CodiceProdotto Otterremo: CodiceNazione Descrizione CodiceProdotto QuantitaProdotta CN-01 Prodotto X CP CN-02 Prodotto X CP CN-03 Prodotto X CP CN-04 Prodotto X CP CN-01 Prodotto Y CP CN-02 Prodotto Y CP CN-03 Prodotto Y CP CN-04 Prodotto Y CP

7 Dove ogni riga della tabella quantità viene associata alla riga della tabella prodotti con il codice prodotto corrispondente. Vediamo la stessa query senza JOIN, SELECT CodiceNazione, Descrizione, Quantita.CodiceProdotto AS CodProdQTA, QuantitaProdotta FROM Prodotti, Quantita otterremo: CodiceNazione Descrizione CodProdQTA QuantitaProdotta CN-01 Prodotto X CP CN-01 Prodotto Y CP CN-02 Prodotto X CP CN-02 Prodotto Y CP CN-03 Prodotto X CP CN-03 Prodotto Y CP CN-04 Prodotto X CP CN-04 Prodotto Y CP CN-01 Prodotto X CP CN-01 Prodotto Y CP CN-02 Prodotto X CP CN-02 Prodotto Y CP CN-03 Prodotto X CP CN-03 Prodotto Y CP CN-04 Prodotto X CP CN-04 Prodotto Y CP Il codice di un prodotto corrisponde a DUE descrizioni!!! Dove ogni riga della tabella quantità viene associata a tutte le righe della tabella prodotti. Select con Join (3 tabelle) Notiamo, nell esempio precedente, che sarebbe utile avere il nome della nazione (dalla tabella Nazioni) al posto del codice. Se si hanno tre tabelle bisogna creare il primo JOIN fra 2 tabelle e farne il Join con la terza es: Nella query che segue è evidenziato il primo JOIN e si vede come, grazie ai join, ogni quantità è relativa a un dato prodotto e una nazione (senza il join sarebbe tutto mischiato e moltiplicato ) SELECT Nazioni.NomeNazione, Prodotti.Descrizione, Quantita.QuantitaProdotta FROM (Nazioni INNER JOIN Quantita ON Nazioni.CodiceNazione = Quantita.CodiceNazione) INNER JOIN Prodotti ON Prodotti.CodiceProdotto = Quantita.CodiceProdotto NomeNazione Descrizione QuantitaProdotta Nazione A Prodotto X ,00 Nazione B Prodotto X ,00 Nazione C Prodotto X ,00 Nazione D Prodotto X ,00 Nazione A Prodotto Y ,00 Nazione B Prodotto Y ,00 Nazione C Prodotto Y ,00 7

8 NomeNazione Descrizione QuantitaProdotta Nazione D Prodotto Y ,00 Vediamo la stessa query SENZA join SELECT Prodotti.Descrizione, Nazioni.NomeNazione, Quantita.QuantitaProdotta FROM Nazioni, Prodotti, Quantita Descrizione NomeNazione QuantitaProdotta Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 8

9 Descrizione NomeNazione QuantitaProdotta Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Prodotto X Nazione A ,00 Prodotto Y Nazione A ,00 Prodotto X Nazione B ,00 Prodotto Y Nazione B ,00 Prodotto X Nazione C ,00 Prodotto Y Nazione C ,00 Prodotto X Nazione D ,00 Prodotto Y Nazione D ,00 Select con Join, Where, campi calcolati e order By Evidenziamo nell esempio autoesplicativo (spero) il campo calcolato in celeste e l ordinamento in verde SELECT CodiceNazione, Descrizione, QuantitaProdotta - QuantitaConsumata AS SaldoQuantita FROM Prodotti INNER JOIN Quantita ON Prodotti.CodiceProdotto = Quantita.CodiceProdotto WHERE Quantita.CodiceNazione ="CN-03" ORDER BY Descrizione CodiceNazione Descrizione SaldoQuantita CN-03 Prodotto X CN-03 Prodotto Y

10 Select con funzioni aggregazione (SUM, COUNT, AVG, ) e raggruppamento (GROUP BY) Nel primo esempio utilizziamo solo 2 funzioni di Aggregazione (senza raggruppare ovvero si crea un unico gruppo per tutti i record) SELECT Count(*) AS NumNazioni, Sum(Nazioni.Abitanti) AS NumAB FROM Nazioni; NumNazioni NumAB Nel secondo esempio utilizziamo la funzioni di Aggregazione SUM raggruppando per nazione ovvero si crea un unico gruppo per ogni nazione SELECT NomeNazione, Sum(Quantita.QuantitaProdotta) AS TotProduzione FROM Nazioni INNER JOIN Quantita ON Nazioni.CodiceNazione = Quantita.CodiceNazione GROUP BY Nazioni.NomeNazione NomeNazione TotProduzione Nazione A Nazione B Nazione C Nazione D DML (Data Manipulation Language) Insert Il comando ha la funzione di inserire i dati nelle tabelle. Sintassi del comando insert 1) Insert semplice (SCONSIGLIATO vivamente!): INSERT INTO <nome_tabella> VALUES (<elenco valori, nello stesso ordine dei campi della tabella>); in questo caso è necessario passare al comando un valore per ogni colonna della tabella, rispettando rigorosamente l'ordine (dato in fase di creazione della tabella) delle colonne stesse. 2) Insert : INSERT INTO <nome_tabella> (<elenco dei campi>) VALUES (<elenco valori>); 10

11 In questo caso, invece, le colonne di destinazione vengono dichiarate, è possibile indicare solo le colonne per le quali vengono passati dei valori in qualsiasi ordine, purché vengano inseriti i valori nello stesso ordine. Es. consideriamo la Tabella T_Alunni Matricola Classe NumOrdine Nome Cognome 100 3_PC 1 Lillo Lollo 101 3_PC 2 Sara Bianchi 102 3_PC 3 Letizia Buona Dopo il comando INSERT INTO T_Alunni (Nome, Cognome, Matricola) VALUES ( Giuseppe, Rossi,339); otterremo Matricola Classe NumOrdine Nome Cognome 100 3_PC 1 Lillo Lollo 101 3_PC 2 Sara Bianchi 102 3_PC 3 Letizia Buona 339 Giuseppe Rossi 3) Insert mediante select: INSERT INTO nome_tabella (<elenco campi>) AS SELECT...; Di per sé il comando insert opera inserendo in tabella una sola riga per volta. Con questa sintassi è possibile, però, inserire più di una riga passando all'insert una serie di righe (o tuple) risultanti da un comando di select, purché tali righe siano compatibili (stesso numero di campi e tipi corrispondenti) con le colonne della tabella su cui si inseriscono i dati. Update Il comando update ha la funzione di modificare i dati delle tabelle. Sintassi del comando update UPDATE <nome_tabella> SET <nome_campo1> = <valore1>, <nome_campo2> = <valore2>,... ; WHERE <condizione>; 11

12 Il nome di ogni campo che deve essere modificato va dichiarato dopo la parola chiave SET e deve essere seguito dal simbolo " = " (uguale) e dal nuovo valore che deve assumere a seguire gli altri campi separati da, (virgola). Quindi vengono modificati più campi della stessa riga in un unico comando update. Se si omette la condizione il comando aggiorna tutte le righe della tabella. È possibile restringerne il numero applicando la parola chiave aggiuntiva WHERE, che permette di effettuare una selezione delle righe: Es consideriamo l solita T_Alunni Matricola Classe NumOrdine Nome Cognome 100 3_PC 1 Lillo Lollo 101 3_PC 2 Sara Bianchi 102 3_PC 3 Letizia Buona 103 3_PC 4 Giuseppe Rossi Con il comando UPDATE T_Alunni SET Nome = Peppe, Classe = 5_Sirio, WHERE Cognome = Rossi ; otterremo: Matricola Classe NumOrdine Nome Cognome 100 3_PC 1 Lillo Lollo 101 3_PC 2 Sara Bianchi 102 3_PC 3 Letizia Buona 103 5_Sirio 4 Peppe Rossi Delete Il comando delete ha la funzione di cancellare i dati dalle tabelle. Sintassi del comando delete DELETE FROM <nome_tabella> WHERE <condizione>; Come il comando update anche delete, se si omette la condizione cancella tutte le righe della tabella. Per identificare le righe da cancellare si usa la clausola aggiuntiva WHERE e la condizione (o le condizioni) ad essa associata. Es DELETE FROM T_Alunni WHERE Matricola < 102 Otterremo Matricola Classe NumOrdine Nome Cognome 100 3_PC 1 Lillo Lollo 101 3_PC 2 Sara Bianchi DDL (Data Definition Language) Create Database Crea un nuovo database 12

13 Create Table Crea una nuova tabella Create View Crea una nuova vista (in MS-Access sono le query salvate ) Alter Table Modifica la struttura di una Tabella (aggiunta- eliminazione di campi, cambio tipo campi ) Drop Table Elimina la tabella dal DataBase 13

SQL: le funzioni di aggregazione

SQL: le funzioni di aggregazione SQL: le funzioni di aggregazione funzioni predefinite che agiscono sui valori contenuti in insiemi di righe della tabella: Conteggi Somme Medie Massimi, minimi Funzione Count La funzione COUNT conta il

Подробнее

SQL DDL. Create database. Alter database. Drop database

SQL DDL. Create database. Alter database. Drop database SQL In informatica, SQL (Structured Query Language) è un linguaggio standardizzato per database basati sul modello relazionale (RDBMS), progettato per le seguenti operazioni: creare e modificare schemi

Подробнее

Select From Where...

Select From Where... Select From Where... SELECT Le colonne che saranno mostrate e in che ordine. Calcoli su colonne FROM La tabella o le tabelle usate dall interrogazione WHERE Condizione che deve essere soddisfatta dalle

Подробнее

Manuale SQL. Manuale SQL - 1 -

Manuale SQL. Manuale SQL - 1 - Manuale SQL - 1 - Istruzioni DDL Creazione di una tabella : CREATE TABLE Il comando CREATE TABLE consente di definire una tabella del database specificandone le colonne, con il tipo di dati ad esse associate,

Подробнее

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA 3. Panoramica su SQL Prof. Mauro Giacomini Sommario Introduzione Istruzione SELECT Tipi di Join Subquery Comandi DML Creazione delle tabelle Introduzione

Подробнее

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati Basi di Dati Matteo Longhi Structured Query Language Introduzione Standard creato nel 1976 da IBM Aggiornato (versione 2 nel 1992 (ANSI X3.135 e ISO 9075 Consente di: DDL: definire la struttura del DB

Подробнее

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013)

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013) SQL quick reference piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013) I tipi dei dati di SQL sono: delimitatori delle costanti: TEXT(n) stringa di caratteri

Подробнее

Caratteristiche dei linguaggi per Database

Caratteristiche dei linguaggi per Database IL LINGUAGGIO Caratteristiche dei linguaggi per Database I linguaggi per basi di dati relazionali possiedono i comandi per: definizione del data base; manipolazione dei dati; associazione tra tabelle diverse;

Подробнее

Esercitazione seconda prova Esame di Stato Prova di Informatica Gestionale ITC Programmatori e Mercurio. Note introduttive

Esercitazione seconda prova Esame di Stato Prova di Informatica Gestionale ITC Programmatori e Mercurio. Note introduttive Note introduttive Il metodo di lavoro proposto ripercorre il ciclo di vita di un sistema informativo automatizzato attraverso l analisi, il progetto, la realizzazione e il testing. Il sistema informativo

Подробнее

QL (Query Language) Alice Pavarani

QL (Query Language) Alice Pavarani QL (Query Language) Alice Pavarani QL Query Language Linguaggio di interrogazione dei dati, permette di: Interrogare la base di dati per estrarre informazioni Elaborare i dati Il risultato di un interrogazione

Подробнее

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare

Подробнее

Linguaggio SQL seconda parte

Linguaggio SQL seconda parte Linguaggio SQL seconda parte A. Lorenzi, E. Cavalli INFORMATICA PER SISTEMI INFORMATIVI AZIENDALI Copyright Istituto Italiano Edizioni Atlas Le condizioni di ricerca 2 Le condizioni di ricerca Usate nelle

Подробнее

Istruzioni DML di SQL

Istruzioni DML di SQL Istruzioni DML di SQL Pag. 99 par.4 1 Sintassi: Costrutto: INSERT INTO (Inserimento di dati in tabelle) INSERT INTO [(, ,, )] VALUES (, ,

Подробнее

Structured Query Language

Structured Query Language IL LINGUAGGIO SQL Structured Query Language Contiene sia il DDL sia il DML, quindi consente di: Definire e creare il database Effettuare l inserimento, la cancellazione, l aggiornamento dei record di un

Подробнее

Fondamenti di Informatica e Programmazione

Fondamenti di Informatica e Programmazione Fondamenti di Informatica e Programmazione Prof. G ianni D Angelo Email: [email protected] A. A. 2018/ 19 Le Origini di SQL Principali Versioni Anni 70 1986 SEQUEL Structured English QUEry Language Sviluppato

Подробнее

Elena Baralis 2007 Politecnico di Torino 1

Elena Baralis 2007 Politecnico di Torino 1 Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE Linguaggio SQL: fondamenti 2 (1/3) Inserimento di tuple Cancellazione di tuple Modifica di tuple 4 (2/3) INSERT inserimento di nuove tuple

Подробнее

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura

Подробнее

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Interrogare una base di dati: algebra relazionale e SQL Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Contesto didattico Il seguente materiale didattico è

Подробнее

PROGETTAZIONE DI DATABASE Linguaggio SQL

PROGETTAZIONE DI DATABASE Linguaggio SQL PROGETTAZIONE DI DATABASE Linguaggio SQL Modello Concettuale (Modellazione del mondo reale) Modello Logico (Definizione del tipo e del formato dei dati) Modello Fisico (Implementazione fisica su supporti

Подробнее

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1 I.I.S. G. COSSALI - ORZINUOVI DATABASE Marzo 2017 Prof. Dario Tomasoni 1 IMPOSTAZIONE 60 min = Database concetti + Esercizi; 10 min = pausa; 30 min = Linguaggio SQL; 30 min = Database prove LibreOffice

Подробнее

SQL - Structured Query Language

SQL - Structured Query Language SQL - Structured Query Language Lab 05 Alessandro Lori Università di Pisa 27 Aprile 2012 Riepilogo esercitazione precedente Operatori insiemistici (UNION, INTERSECT, EXCEPT) Riepilogo esercitazione precedente

Подробнее

ESERCITAZIONI ACCESS

ESERCITAZIONI ACCESS ESERCITAZIONI ACCESS MS Access 2000 Struttura di riferimento: Studente (Matricola, Cognome, Nome) Esame (Matricola, Materia, Voto, Data) CREARE LE TABELLE IN SQL: Create table STUDENTE ( matricola char(6)

Подробнее

Interrogazioni nidificate

Interrogazioni nidificate Interrogazioni nidificate Nella clausola where si possono utilizzare valori prodotti da altre istruzioni select utilizzando any (qualsiasi) o all (tutti) insieme agli operatori di confronto Trovare nome,

Подробнее

SELECT s.nome, e.data Studenti s, Esami e WHERE e.materia = 'BD' AND e.voto = 30 AND e.matricola = s.matricola

SELECT s.nome, e.data Studenti s, Esami e WHERE e.materia = 'BD' AND e.voto = 30 AND e.matricola = s.matricola SQL SELECT s.nome, e.data FROM Studenti s, Esami e WHERE e.materia = 'BD' AND e.voto = 30 AND e.matricola = s.matricola SELECT s.nome As Nome, 2002 - s.annonascita As Eta, 0 As NumeroEsami FROM Studenti

Подробнее

DATABASE PER IL WEB. Programmazione Web 1

DATABASE PER IL WEB. Programmazione Web 1 DATABASE PER IL WEB Programmazione Web 1 Archite3ura web con database Client Tier Web/App Tier DB Tier Client Web / App Server Database Il server web comunica con un altro server che con8ene il la banca

Подробнее

CORSO ACCESS 2000 PARTE VI

CORSO ACCESS 2000 PARTE VI Le Query Le Query selezionano dati, da una o più tabelle in un database, che soddisfano determinati requisiti e visualizzano i risultati in un foglio dati. I dati richiesti vengono visualizzati in un recordset

Подробнее

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 3 Raffaella Gentilini 1 / 52 Sommario 1 Il DML di SQL: Interrogazione di una BD 2 / 52 Data Manipulation Language (DML) Istruzioni del DML Le istruzioni del DML

Подробнее

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. (Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System

Подробнее

Microsoft Access. Microsoft Access. Maurizio Rebaudengo, Paolo Garza 1. Microsoft Access. Creazione base di dati. Apertura di una base dati

Microsoft Access. Microsoft Access. Maurizio Rebaudengo, Paolo Garza 1. Microsoft Access. Creazione base di dati. Apertura di una base dati Microsoft Access Programma applicativo del pacchetto Microsoft Office per la gestione delle basi di dati. Microsoft Access 2 Creazione base di dati Apertura di una base dati Una nuova base dati si crea

Подробнее

MODULO 2. Query normali e parametriche Query di:

MODULO 2. Query normali e parametriche Query di: MODULO 2 TITOLO DBMS e SQL In questo Modulo si affronta lo studio dei DBMS Access e MySQL. In particolare per Access, si descrive come progettare, impostare e modificare gli strumenti di lavoro (tabelle,

Подробнее

La stampa Unione con MS-Word

La stampa Unione con MS-Word La stampa Unione con MS-Word Il documento PRINCIPALE La stampa unione può essere utilizzata per creare automaticamente documenti che presentino una parte in comune e una parte che cambia in ogni singolo

Подробнее

Interrogazioni complesse. SQL avanzato 1

Interrogazioni complesse. SQL avanzato 1 Interrogazioni complesse SQL avanzato Classificazione delle interrogazioni complesse Query con ordinamento Query con aggregazione Query con raggruppamento Query binarie Query annidate SQL avanzato 2 Esempio

Подробнее

SQL e algebra relazionale

SQL e algebra relazionale SQL e algebra relazionale Il linguaggio SQL consente una maggiore espressività dell algebra relazionale grazie a costrutti che permettono: di definire join più sofisticati di ordinare le righe dei risultati

Подробнее

<Nome Tabella>.<attributo>

<Nome Tabella>.<attributo> Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (2) Tabelle mult., variabili, aggreg, group Prof. Alberto

Подробнее

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,

Подробнее

Il linguaggio SQL: raggruppamenti

Il linguaggio SQL: raggruppamenti Il linguaggio SQL: raggruppamenti Sistemi Informativi T Versione elettronica: 04.3.SQL.gruppi.pdf Informazioni di sintesi Quanto sinora visto permette di estrarre dal DB informazioni che si riferiscono

Подробнее

Domande utili alla preparazione dell orale di Informatica all Esame di Stato

Domande utili alla preparazione dell orale di Informatica all Esame di Stato Domande utili alla preparazione dell orale di Informatica all Esame di Stato 1.Al livello fisico un database si appoggia ai files per contenere i suoi dati? 2.Esistono altri modelli di organizzazione oltre

Подробнее

SQL: DDL, VI, Aggiornamenti e Viste

SQL: DDL, VI, Aggiornamenti e Viste SQL: DDL, VI, Aggiornamenti e Viste 1 SQL è più di un semplice linguaggio di interrogazione v Linguaggio di definizione dati (Data-definition language, DDL): Crea/distrugge/modifica relazioni e viste Definisce

Подробнее

Esempi SQL con Access. Orazio Battaglia

Esempi SQL con Access. Orazio Battaglia con Access Orazio Battaglia Consideriamo la base di dati in figura. 2 Interrogazione 1: Selezioniamo tutti gli impiegati, vogliamo Cognome, Nome e Posizione SELECT Impiegati.Cognome, Impiegati.Nome, Impiegati.Posizione

Подробнее

Alessandra Raffaetà. Esercizio: Cinema

Alessandra Raffaetà. Esercizio: Cinema Lezione 8 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Esercizio: Cinema

Подробнее

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà Lezione 8 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Esercizio: Cinema

Подробнее

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi Informatica della Facoltà di Lingue e Letterature dell Università degli Studi di Torino. Qualsiasi altro Query (Interrogazioni) SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il

Подробнее