Database parte 2. Database azienda
|
|
- Valeria Belloni
- 5 anni fa
- Visualizzazioni
Transcript
1 Database parte 2 Esercizio azienda SQL Ing. Lucia Vaira lucia.vaira@unisalento.it Database azienda L azienda è organizzata in dipartimenti Ciascun dipartimento ha un codice, un nome e un impiegato che lo gestisce (si deve tener traccia della data in cui viene dato l incarico al manager) Ciascun dipartimento controlla un certo numero di progetti Ciascun progetto ha un codice, un nome ed è sviluppato in una sola sede Per ciascun impiegato verrà memorizzato il codice fiscale, il nome, l indirizzo, lo stipendio, il sesso e la data di nascita Un impiegato è assegnato ad un solo dipartimento ma può lavorare su molti progetti, non necessariamente controllati dallo stesso dipartimento Bisogna tener traccia del numero di ore settimanali lavorate da un impiegato su ciascun progetto e del diretto supervisore di ciascun impiegato Si registreranno a scopi assicurativi le persone a carico di ciascun impiegato memorizzando il loro nome di battesimo, il sesso, la data di nascita e il rapporto di parentela con l impiegato stesso 1
2 Database azienda Costruire il diagramma ER e il modello relazionale SQL (Structured Query Language) Rappresenta lo standard tra i linguaggi per la gestione di basi di dati relazionali È un linguaggio dichiarativo (non-procedurale) à non specifica la sequenza di operazioni da compiere per ottenere il risultato È relazionalmente completo, nel senso che ogni espressione dell algebra relazionale può essere tradotta in SQL 2
3 SQL (Structured Query Language) Il linguaggio SQL consente di accedere ai dati, descriverli, definirli, manipolarli e interrogarli. Contiene dunque funzionalità di : Data Definition Language DDL Data Manipulation Language DML Data Control Language DCL Data Query Language DQL SQL (Structured Query Language) Data Definition Language DDL insieme di istruzioni dedicate alla definizione di dati e tabelle Command CREATE ALTER DROP Description Creates a new table, a view of table, or other objects in database Modifies an existing database object, such as a table or a column Deletes an entire table, a view of a table or other objects in the database 3
4 SQL (Structured Query Language) Data Manipulation Language DML insieme di istruzioni dedicate alla manipolazione di dati, include istruzioni per l'inserimento, la cancellazione e la modifica di dati. Command INSERT UPDATE DELETE Description Creates a record Modifies records Deletes records SQL (Structured Query Language) Data Control Language DCL insieme di istruzioni dedicate all accesso ai dati Command GRANT REVOKE Description Gives a privilege to user Takes back privileges granted from user 4
5 SQL (Structured Query Language) Data Query Language DQL insieme di istruzioni dedicate all interrogazione dei dati Command SELECT Description Retrieves certain records from one or more tables Il valore NULL Rappresenta l assenza di informazione è compatibile con ogni tipo di dato non va confuso con lo 0 o con, non sono la stessa cosa, anche se internamente possono avere la stessa rappresentazione utilizzato nelle espressioni aritmetiche, restituisce sempre il valore NULL 5
6 Il valore NULL Possiamo avere tre interpretazioni distinte: 1. Valore sconosciuto (valore che esiste ma che non è noto) Es. una persona ha una data di nascita, ma non è nota 2. Valore non disponibile (valore che esiste ma che è nascosto) Es. una persona ha un numero di telefono, ma non vuole che sia visualizzato 3. Attributo non applicabile (tipo di dato non definito per una certa tuple) Es. attributo ultimalaurea può essere NULL per persone che non hanno frequentato l università Il valore NULL Confronti con NULL: per verificare se un valore è NULL, occorre l operatore IS NULL o IS NOT NULL, non l operatore di uguaglianza Se A vale NULL, in SQL A = 0 è falsa A > 0 è falsa A < 0 è falsa A!= 0 è vera A = NULL è falsa A IS NULL è vera 6
7 Interrogazione base in SQL SELECT ListaAttributi FROM ListaTabelle [ WHERE Condizione] ListaAttributi (cosa si vuole come risultato) è la lista delle colonne da estrarre, l ordine e il nome ListaTabelle (da dove si prende) è la lista delle tabelle sulle quali verranno estratti i dati Condizione (che condizioni deve soddisfare) definisce una condizione su cui verranno filtrati i record da estrarre Interrogazione base in SQL SELECT Cosa FROM Dove lo trovo [ WHERE A queste condizioni ] Cosa intende i nomi degli attributi che si intendono ottenere dalla ricerca In caso di ambiguità (se lo stesso nome di attributo è presente in più tabelle dello stesso database) bisogna chiarire a quale ci si riferisce usando la forma tabella.attributo Per selezionare tutti gli attributi di una tabella si può usare la forma tabella.* 7
8 Interrogazione base in SQL SELECT Cosa FROM Dove lo trovo [ WHERE A queste condizioni ] Dove lo trovo intende l insieme delle tabelle che contengono gli attributi elencati nella clausola SELECT ( cosa ) o utilizzati in quella che specifica le condizioni Interrogazione base in SQL SELECT Cosa FROM Dove lo trovo [ WHERE A queste condizioni ] Le condizioni possono essere divise in semantiche (correlate al significato della ricerca) di join (correlate alla necessità di chiarire le relazioni fra le tabelle) Si possono (devono) combinare con operatori booleani (es. le condizioni di join devono essere in AND tra di loro) 8
9 Clausola SELECT Definisce le colonne da visualizzare nel risultato della query e permette anche di rinominare colonne e di generarne di nuove Corrisponde ad un operazione di proiezione L operatore * permette di recuperare tutti gli attributi della tabella specificata nella clausola FROM L operatore DISTINCT consente di rimuovere i duplicati (ALL è di default) Es. tabella persona(idpersona, CodiceFiscale, Nome,Cognome, DataNascita) La seguente query permette di recuperare l intero contenuto di persona che equivale a Clausola FROM Specifica la tabella o le tabelle su cui si fa la query Costruisce la tabella intermedia a partire da una o più tabelle, su cui operano le altre clausole (SELECT, WHERE...) La tabella intermedia è il risultato del prodotto cartesiano delle tabelle elencate Pseudonimo (alias), non obbligatorio, si usa per abbreviare la scrittura 9
10 Clausola WHERE Permette di filtrare le tuple in base ad una condizione In generale è costituita da un espressione logica di predicati Viene usata la logica a tre valori I predicati possono essere combinati usando gli operatori logici (AND, OR, NOT), di comparazione, matematici e operatori sulle stringhe È opzionale! Una tupla soddisfa la clausola WHERE se e solo se l espressione risulta vera per tale tupla Logica a tre valori SQL ricorre alla logica dei predicati a tre valori: Vero (V) Falso (F) sconosciuto(unknown, indicato con?) Fanno eccezione i predicati IS NULL e IS NOT NULL, il cui valore è sempre o vero o falso, anche se il valore di confronto è sconosciuto Estensione degli operatori booleani 10
11 Clausola ORDER BY Si usa per ordinare il risultato di una query secondo i valori di una o più colonne Per ogni colonna si specifica se l'ordinamento è per valori ascendenti (operatore ASC, di default) o discendenti (operatore DESC) Operatori Operatori sulle stringhe (e.g. LIKE) Operatori di confronto (e.g. BETWEEN, IN, NOT IN) Operatori sui valori NULL (e.g. IS NULL, IS NOT NULL) 11
12 Funzioni di aggregazione Elaborano un insieme di tuple ma restituiscono un unico risultato Ad eccezione di COUNT, ignorano i NULL COUNT(*) ritorna come risultato il numero di tuple che produce la SELECT, compresi i valori NULL e i valori duplicati COUNT(attributo) ritorna come risultato il numero di tuple che produce la SELECT, esclusi i valori NULL COUNT(DISTINCT attributo) ritorna come risultato il numero di tuple che produce la SELECT, esclusi i valori NULL e i duplicati Ammettono come argomento un attributo o un espressione (ma non *) SUM e AVG: argomenti numerici o tempo MAX e MIN: argomenti su cui è definito un ordinamento Clausola GROUP BY Consente di realizzare l operazione di aggregazione o raggruppamento secondo certi criteri Clausola che segue la WHERE e precede la ORDER BY (ove presente) 12
13 Clausola HAVING Può essere usata correttamente solo in combinazione con la clausola GROUP BY Permette di specificare condizioni sui gruppi di tuple generati dalla clausola GROUP BY in modo da selezionare solo i gruppi che rispettano certi criteri Clausola che segue la GROUP BY e precede la ORDER BY (ove presente) HAVING vs. WHERE WHERE: pone condizioni sulle colonne selezionate HAVING: pone condizioni sui gruppi creati dalla clausola GROUP BY 13
14 SQL Join L operazione di Join permette di correlare dati presenti in tabelle diverse Le colonne devono rappresentare lo stesso insieme di entità (devono appartenere allo stesso dominio) È espressa in SQL tramite un prodotto cartesiano a cui sono applicati uno o più predicati di join Il predicato di join esprime una relazione che deve essere verificata dalle tuple risultato della query SQL Join L operazione di join si interpreta nel seguente modo: Nella clausola FROM si genera il prodotto Cartesiano delle tabelle coinvolte Nella clausola WHERE si applicano i predicati Nella clausola SELECT si estraggono le colonne specificate nella Target List Tipi di JOIN: INNER JOIN LEFT JOIN RIGHT JOIN FULL JOIN SELF JOIN CROSS JOIN 14
15 Equi-Join La forma più utile e immediata della operazione di join è la equijoin tra due tabelle Questa operazione realizza l operazione di giunzione naturale definita nell algebra relazionale Restituisce una terza tabella le cui righe sono tutte e sole quelle ottenute dalle righe delle due tabelle di partenza in cui i valori delle colonne (attributi) in comune sono uguali Inner Join Per la inner-join la condizione di join non deve necessariamente essere una condizione di uguaglianza È possibile effettuare join tra colonne espresse sullo stesso dominio, seppure utilizzate per rappresentare informazioni non esplicitamente correlate. NOTA: la equi-join è un caso particolare di Inner Join 15
16 Self Join È il join di una tabella con se stessa occorre rinominare le tabelle in FROM Esempio: trovare per ogni impiegato il nome del suo responsabile. Il risultato non appartiene allo schema della tabella, ma al prodotto della tabella con se stessa Join espliciti Negli esempi visti finora abbiamo utilizzato la forma tradizionale di scrittura di una join mediante l uso di predicati di join nella clausola WHERE Nelle ultime revisioni allo standard sono stati introdotti, per specificare il tipo di join, dei costrutti ad hoc (non sono supportati da tutti i DBMS commerciali) Tipi di join espliciti sono: INNER JOIN CROSS JOIN (prodotto Cartesiano) OUTER JOIN 16
17 Inner Join Cross Join L operazione di prodotto tra due tabelle, definita nell algebra relazionale, si ottiene mediante una operazione di join espressa in maniera tradizionale in cui non venga specificata la condizione di join. Se le due tabelle sono composte rispettivamente da n e da m righe, la nuova tabella conterrà n x m righe, ottenute accodando ciascuna riga della prima tabella con ciascuna riga della seconda. 17
18 Outer Join Il join esterno prevede che tutte le tuple diano un contributo al risultato, estendendo con valori nulli le tuple che non hanno una corrispondenza La outer-join può mantenere i valori per cui non esiste corrispondenza per una, per l altra o per entrambe le tabelle; i tre casi vengono rispettivamente definiti 1. outer-join sinistra 2. outer-join destra 3. outer-join completa 1. Il join sinistro estende le tuple del primo operando 2. Il join destro estende le tuple del secondo operando 3. Il join completo le estende tutte Outer Join In SQL l operatore di OUTER JOIN può essere introdotto esplicitamente nella clausola FROM del comando SELECT utilizzando i costrutti: opzionale 18
19 19
20 Inner Join Rappresenta l insieme intersezione tra A e B Serve per estrarre gli elementi in comune Inner Join: Left Join 20
21 Right Join Full Outer Join 21
22 Esempio pratico tab1 tab2 NUMID NUMID tab2 tab
23 Esempio pratico inner join tab1 tab select * from tab1 inner join tab2 on tab1.numid = tab2.numid Risultato? [11, 12] Esempio pratico left join tab1 tab select * from tab1 left join tab2 on tab1.numid = tab2.numid Risultato? [10, 14, 11, 12] 23
24 Esempio pratico left join E se non volessimo considerare l intersezione? tab1 tab select * from tab1 left join tab2 on tab1.numid = tab2.numid where tab2.numid IS NULL Risultato? [10, 14] Esempio pratico right join tab1 tab select * from tab1 right join tab2 on tab1.numid = tab2.numid Risultato? [11, 12, 13, 15] 24
25 Esempio pratico right join E se non volessimo considerare l intersezione? tab1 tab select * from tab1 right join tab2 on tab1.numid = tab2.numid where tab1.numid IS NULL Risultato? [13, 15] Esempio pratico full join tab1 tab select * from tab1 full join tab2 on tab1.numid = tab2.numid Risultato? [10, 14, 11, 12, 13, 15] 25
26 Esempio pratico full join E se non volessimo considerare l intersezione? tab1 tab select * from tab1 full join tab2 on tab1.numid = tab2.numid where tab1.numid IS NULL OR tab2.numid IS NULL Risultato? [10, 14, 13, 15] 26
27 Database azienda - Queries 1. Selezionare il nome e l indirizzo di tutti gli impiegati che lavorano per il dipartimento Research 2. Per ogni impiegato, recuperare il nome e il cognome dell impiegato stesso e del suo immediato supervisore 3. Ottenere una lista di tutti i numeri dei progetti per i quali è coinvolto l impiegato avente cognome Smith, sia come lavoratore, sia come manager del dipartimento che controlla il progetto 4. Per ogni dipartimento, selezionare il numero di dipartimento, il numero di impiegati che ci lavorano e il loro stipendio medio 5. Per ogni dipartimento che ha più di 5 impiegati, selezionare il numero di dipartimento e il numero di impiegati che guadagnano più di euro 27
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
DettagliStructured 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
DettagliPrincipi di Progettazione del Software a.a Il linguaggio SQL. Il Linguaggio SQL
Principi di Progettazione del Software a.a. 2017-2018 Ing. Università del Salento Il Linguaggio SQL Due componenti principali: Ø DDL (Data Definition Language) Contiene i costrutti necessari per la creazione/modifica
DettagliSQL. SQL: "storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. "standard di fatto"
SQL SQL: "storia Sviluppato nella metà degli anni settanta (194) presso il laboratorio di ricerca IBM di S.Josè Dal 1983 ca. "standard di fatto" E il linguaggio di riferimento per l interrogazione di DBMS
DettagliSISTEMI 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
DettagliIL LINGUAGGIO SQL LE BASI
IL LINGUAGGIO SQL LE BASI DB DI RIFERIMENTO PER GLI ESEMPI 2 ESPRESSIONI NELLA CLAUSOLA SELECT La SELECT list può contenere non solo attributi, ma anche espressioni: Le espressioni possono comprendere
DettagliCaratteristiche 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;
DettagliCorso di Basi di Dati
Corso di Basi di Dati Il Linguaggio SQL Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Il Linguaggio SQL SQL (Structured Query Language) è il linguaggio di riferimento per le basi di dati
DettagliBasi 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
DettagliSQL 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
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 4 Raffaella Gentilini 1 / 46 Sommario 1 Join di Tabelle Join Naturale Theta Join Join Esterno 2 3 Funzioni d aggregazione La Clausola GROUP BY La Clausola HAVING
DettagliInterrogare 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 è
DettagliSistemi di Elaborazione delle Informazioni
SCUOLA DI MEDICINA E CHIRURGIA Università degli Studi di Napoli Federico II Corso di Sistemi di Elaborazione delle Informazioni Dott. Francesco Rossi a.a. 2017/2018 1 Sesta parte Interrogazione di una
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 4 Raffaella Gentilini 1 / 48 Sommario 1 Join di Tabelle Join Naturale Theta Join Join Esterno 2 La Clausola HAVING 3 2 / 48 Join Naturale Theta Join Join Esterno
DettagliInformatica II Basi di Dati (07/08) Parte 2. 4 Accesso ai dati di un DB. Accesso ai dati di un DB. Accesso ai dati di un DB
Informatica II Basi di Dati (07/08) Parte 2 Gianluca Torta Dipartimento di Informatica dell Università di Torino torta@di.unito.it, 0116706782 4 Accesso ai dati di un DB SQL Accesso ai dati di un DB Aggiornamento
DettagliLinguaggio 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
DettagliSQL [2] Concetti avanzati di SQL. Esempi di interrogazioni
SQL [2] Concetti avanzati di SQL 2 Esempi di interrogazioni 3 Esempi di interrogazioni 4 Esempi di interrogazioni 5 Confronti che coinvolgono NULL NULL può voler dire: valore sconosciuto (esiste ma non
DettagliManuale Comandi SQL SQL. Sito per esercitarsi (on line) SQL
Manuale Comandi SQL Sito per esercitarsi (on line)... 1 SQL... 1 Convenzioni e simboli usati... 2 Query Language... 2 Comando Select... 2 Order By:... 3 Sintassi generale:... 3 Ordinamanto su PIU campi...
DettagliBasi di dati - Laboratorio
Basi di dati - Laboratorio Corso di Laurea in Bioinformatica Docente: Barbara Oliboni Lezione 4 Contenuto della lezione Interrogazioni SQL Join interni ed esterni Uso di variabili tupla o ALIAS Interrogazioni
DettagliInformatica Grafica. Basi di dati parte 2
Informatica Grafica Corso di Laurea in Ingegneria Edile Architettura Basi di dati parte 2 Michele Lombardi su materiale originario di Paolo Torroni Dipartimento di Elettronica, Informatica e Sistemistica
DettagliQuery. 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
DettagliStructured. 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
DettagliGestione delle informazioni. Tot. h 10. Base di Dati. Tot. h 56. Grafica in C# - Laboratorio- Tot. h 40. Dipartimento Informatica Materia Informatica
Dipartimento Informatica Materia Informatica Classe 5 Tec Ore/anno 198 A.S. 2018-2019 MODULI COMPETENZE UNITA di APPRENDIMENTO Gestione delle informazioni Tot. h 10 Base di Dati Tot. h 56 Grafica in C#
DettagliV. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/
Modelli di Base Dati 8 L aggregazione e il raggruppamento in SQL a.a. 2001/2002 8.1 SQL: le funzioni di aggregazione 8.2 funzioni predefinite che agiscono sui valori contenuti in insiemi di righe della
DettagliSQL: 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
DettagliSQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative
SQL SQL Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative l utente specifica quale informazione è di suo interesse, ma non come estrarla dai dati Le interrogazioni vengono
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 4 Raffaella Gentilini 1 / 27 Sommario 1 Join di Tabelle 2 3 2 / 27 Lo Statement JOIN Join espliciti di tabelle nella clausola FROM In SQL e possibile scrivere
DettagliBasi di Dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL
Basi di Dati Il Linguaggio SQL Il Linguaggio SQL SQL (Structured Query Language) è di fatto lo standard tra i linguaggi per la gestione di basi di dati relazionali è un linguaggio dichiarativo (non-procedurale),
DettagliOperatori aggregati. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni con raggruppamento
Operatori aggregati In algebra relazionale le espressioni vengono valutate sulle singole tuple in successione. Talvolta però possono essere necessarie informazioni derivabili dall esame di tutte le tuple
DettagliGestione di basi di dati relazionali con SQL (parte I) Linguaggi per basi di dati
Gestione di basi di dati relazionali con SQL (parte I) Gian Pietro Picco Dipartimento di Elettronica e Informazione Politecnico di, Italy picco@elet.polimi.it http://www.elet.polimi.it/~picco Linguaggi
DettagliSelect 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
DettagliLe implementazioni nei vari DBMS relazionali commerciali
Andrea Gasparetto Le implementazioni nei vari DBMS relazionali commerciali includono funzionalità non previste dallo standard non includono funzionalità previste dallo standard implementano funzionalità
DettagliProf. Alberto Postiglione Dipartimento di Scienze della Comunicazione Università degli Studi di Salerno
Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (1) Interrogazioni semplici Prof. Alberto Postiglione
DettagliLinguaggi per basi di dati. Linguaggi per basi di dati e SQL. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione
Linguaggi per basi di dati e SQL Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento
DettagliLinguaggi per basi di dati e SQL
Linguaggi per basi di dati e SQL Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento
DettagliSQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto
SQL Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2005/2006 Select La forma di select cui siamo arrivati
DettagliCorso di Informatica Linguaggio SQL prima parte
Corso di Informatica Linguaggio SQL prima parte Anno Accademico 2018-2019 Linguaggio SQL (Structured Query Language) 2 Il linguaggio SQL Un linguaggio per DBMS (DataBase Management System) deve permettere
Dettagli<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
DettagliSQL Matteo Magnani, Danilo Montesi Università di Bologna SQL. SQL come Data Manipulation Language - (SELECT FROM WHERE ORDER BY)
SQL SQL come Data Manipulation Language - (SELECT FROM WHERE ORDER BY) Esempio 1 Madre Maternita Figlio Nome Eta Andrea 27 Aldo 25 Maria 55 Anna 50 Filippo 26 50 60 Olga 30 Sergio 85 Luisa 75 Persone Reddito
DettagliLaboratorio di. Docenti: Alberto Belussi e Carlo Combi
Laboratorio di Basi di dati/basi i di dati per Bioinformatica Docenti: Alberto Belussi e Carlo Combi Lezione 3 Interrogazioni i SQL Le interrogazioni i i SQL hanno la seguente struttura: SELECT
DettagliE possibile ordinare le righe del risultato di una interrogazione attraverso la clausola order by, a chiusura di una interrogazione.
Ordinamento E possibile ordinare le righe del risultato di una interrogazione attraverso la clausola order by, a chiusura di una interrogazione. order by AttrdiOrdinamento [asc desc] {, AttrdiOrdinamento
DettagliIl linguaggio SQL - Interrogazioni -
Il linguaggio SQL - Interrogazioni - Dott. Nicola Dragoni nicola.dragoni@gmail.com (Il contenuto di queste slide è stato originariamente creato dal Dott. Matteo Magnani) 1 Il linguaggio SQL Il linguaggio
DettagliManuale 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,
DettagliOperatori aggregati. Gli operatori di aggregazione NON sono rappresentabili in Algebra Relazionale. conteggio, minimo, massimo, media, somma
Aggregazione dati Operatori aggregati Nelle espressioni della target list possiamo avere anche espressioni che calcolano valori a partire da insiemi di ennuple SQL-2 prevede 5 possibili operatori di aggregamento:
DettagliALGEBRA'RELAZIONALE'
ALGEBRA'RELAZIONALE'! 2 Definizioni'! Algebra Relazionale! Insieme di operatori di base del modello relazionale! Espressioni in Algebra relazionale! Sequenza di operazioni in algebra relazionale! Calcolo
DettagliPRODOTTO CARTESIANO Caso Generale
PRODOTTO CARTESIANO Caso Generale Vincoli di integrità dei dati Un database non deve solamente memorizzare i dati, ma garantire che i dati memorizzati siano corretti; se i dati sono imprecisi o incoerenti,
DettagliInterrogazioni su più tabelle. Interrogazioni su più tabelle. Clausola where. Interrogazioni su più tabelle
Interrogazioni su più tabelle Se si vogliono estrarre informazioni da più tabelle, queste devono apparire come argomento della clausola from. Se si deve formulare un join, è possibile farlo in modo esplicito
DettagliSommario. Introduzione... 13
Sommario Introduzione... 13 1. Database pro e contro... 19 A cosa serve conoscere i database?...19 Le alternative alla gestione manuale...22 Quando non serve un database?...24 Domande ed esercizi...26
DettagliSQL 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
DettagliLezioni di Laboratorio sui Data Base
Lezioni di Laboratorio sui Data Base Informatica per l'impresa Docente Tutor: Dott. Gianluigi Roveda OBIETTIVO: Rivedere come attività di laboratorio le query di tipo select scritte in SQL ma con le variazioni
DettagliQueries su più tabelle
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
DettagliSQL 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
DettagliSQl come DML. Angelo Chianese,, Vincenzo Moscato, Antonio Picariello,, Lucio Sansone
SQl come DML Angelo Chianese,, Vincenzo Moscato, Antonio Picariello,, Lucio Sansone Basi di dati per la gestione dell'informazione 2/ed McGraw-Hill Capitolo 5 Appunti dalle lezioni SQL come DDL Sistemi
DettagliSELECT 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
DettagliSELECT s.nome, e.data FROM Studenti s, Esami e WHERE e.materia = 'BD' AND e.voto = 30 AND e.matricola = s.matricola
SQL, e.data, Esami e WHERE e.materia = 'BD' AND e.voto = 30 AND e.matricola = s.matricola As Nome, 2002 - s.annonascita As Eta, 0 As NumeroEsami WHERE NOT EXISTS (SELECT * WHERE e.matricola = s.matricola
DettagliIl formato di base di un interrogazione in SQL è: SELECT R i1.c 1, R i2.c 2,..., R in.c n FROM R 1, R 2,..., R k WHERE F;
54 Il formato di base di un interrogazione in SQL è: SELECT R i1.c 1, R i2.c 2,..., R in.c n FROM R 1, R 2,..., R k WHERE F; dove R 1, R 2,..., R k è una lista di nomi distinti di relazioni R i1.c 1, R
DettagliSQL - Structured Query Language
SQL - Structured Query Language Luca Martini Università di Pisa 16 aprile 2010 Riepilogo sugli operatori aggregati Sintassi SELECT A t t r i b u t o 1, MAX( A t t r i b u t o 2 ),... FROM Tabella1, Tabella2,...
DettagliCorso di Informatica Medica
Università degli Studi di Trieste Corso di Laurea Magistrale in INGEGNERIA CLINICA ESERCITAZIONE: IL LINGUAGGIO SQL Corso di Informatica Medica Docente Sara Renata Francesca MARCEGLIA Dipartimento di Ingegneria
DettagliLinguaggio SQL. Prof. Giuseppe Tandoi
Caratteristiche generali SQL è uno strumento per organizzare gestire recuperare dati memorizzati in DataBase organizzati su base Relazionale. Caratteristiche generali SQL è l'acronimo di Structured Query
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 6 Raffaella Gentilini 1 / 40 Sommario 1 Viste 2 3 2 / 40 Viste Viste le viste sono tabelle virtuali corrispondono al risultato di una query (SELECT) valutata
DettagliInterrogazioni in SQL SQL. Interrogazioni in SQL. Cenni sull implementazione
Interrogazioni in SQL SQL Interrogazioni Non esiste un SQL standard (vari dialetti) Formulazione di interrogazioni (query) è parte del Data Manipulation Language, DML Anche usato come Data Declaration
DettagliIl linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL: fondamenti. Il linguaggio SQL
: fondamenti Linguaggio per gestire le basi di dati relazionali Structured Query Language SQL possiede istruzioni per definire lo schema di una base di dati relazionale leggere e scrivere i dati definire
DettagliSQL: Structured Query Language. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma
SQL: Structured Query Language 1 SQL:Componenti Principali Data Manipulation Language (DML): interrogazioni, inserimenti, cancellazioni, modifiche Data Definition Language (DDL): creazione, cancellazione
DettagliSQL. SQL: una visione panoramica. SQL: "storia" Definizione dei dati
SQL SQL: una visione panoramica I lucidi presentati sono liberamente ispirati al contenuto del Capitolo 4 del libro Atzeni, Ceri, Paraboschi, Torlone Basi di dati - McGraw-Hill, 1999 Structured Query Language
DettagliSQL /10/2016 Basi di dati - SQL 1
SQL 24-27/10/2016 Basi di dati - SQL 1 Esercitazioni pratiche Per SQL è possibile (e fondamentale) svolgere esercitazioni pratiche Verranno anche richieste copme condizione per svolgere le prove parziali
DettagliLinguaggio SQL: fondamenti D B M G
Linguaggio SQL: fondamenti Istruzione SELECT: fondamenti Struttura di base Clausola WHERE Ordinamento del risultato Join Funzioni aggregate Operatore GROUP BY 2 Istruzione SELECT: esempio Trovare il codice
DettagliSQL - Sottointerrogazioni
una delle ragioni che rendono SQL un linguaggio potente è la possibilità di esprimere interrogazioni più complesse in termini di interrogazioni più semplici, tramite il meccanismo delle subqueries (sottointerrogazioni)
Dettagli4.SQL QUERY. Fare una query significa fare delle ricerche sul nostro database.
4.SQL QUERY >definizione A cura di: Celora Luca Fare una query significa fare delle ricerche sul nostro database. >strumenti da usare SELECT //sceglie le colonne da visualizzare FROM //indica da quali
DettagliSQL: "storia" 31/05/2006 2
SQL originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo gli aspetti essenziali, non i dettagli
DettagliLezione 6. Algebra e Calcolo Relazionale
Lezione 6 Algebra e Calcolo Relazionale 1 Sommario Esempio di Applicazione con Database (AZIENDA) Algebra Relazionale Operazioni Relazionali Unarie Operazioni dell Algebra Relazionale dalla teoria degli
DettagliLezione 7 SQL (II) Basi di dati bis Docente Mauro Minenna Pag.1
Lezione 7 SQL (II) Pag.1 Ancora sugli operatori di confronto tra insiemi Abbiamo già visto IN, EXISTS e UNIQUE. Possiamo anche usare NOT IN, NOT EXISTS e NOT UNIQUE Disponibili anche: op ANY, op ALL Trovare
Dettagli(Lezione SQL 3) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione. Università degli Studi di Padova
Università degli Studi di Padova Corso di Laurea Magistrale in Bioingegneria A.A. 2010-20112011 INFORMATICA SANITARIA (Lezione SQL 3) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione Università
DettagliArchivi e basi di dati - ing. M. Cossentino. Settore. Traccia 1. Traccia 200. Settore non polarizzato
Settore Traccia 1 Traccia 200 Settore non polarizzato '! " # $ % & ( ) * + + ' ' ' !"#"$%, & &'(("% '&)'' ''"* - -. / / / 0/!- "-, (0 #- / / / 0/ --- + 1 ' # $ + 2 13 ,, - 4 '. & 56 2 '/!!! "7&% 8, 9 /'"'0'1'&'
DettagliInterrogazioni semplici
Interrogazioni semplici Lorenzo Sarti 2009 Basi di Dati 1 select Campi considerati Matricola Cognome Nome Data di nascita A80198760 Bianchi Anna 22/03/1967 A80293450 Rossi Andrea 13/04/1968 A80198330 Neri
DettagliD B M G. Linguaggio SQL: fondamenti. Istruzione SELECT: fondamenti. Elena Baralis 2007 Politecnico di Torino 1. Struttura di base
Linguaggio SQL: fondamenti Struttura di base Clausola WHERE Ordinamento del risultato Join Funzioni aggregate Operatore GROUP BY 2007 Politecnico di Torino 1 Istruzione SELECT: esempio Trovare il codice
DettagliDATABASE 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
DettagliInterrogazioni 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
DettagliAlgebra relazionale. Algebra relazionale. Operatori dell algebra relazionale. Operatori dell algebra relazionale. Algebra relazionale.
Algebra relazionale Algebra relazionale Introduzione Selezione e proiezione Prodotto cartesiano e join Natural join, theta-join e semi-join Outer join Unione e intersezione Differenza e antijoin Divisione
DettagliFondamenti di Informatica A. A / 1 9
Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 0 1 8 / 1 9 Concetti Introduttivi 1/2 SQL (Structured Query Language) permette di manipolare i dati, interrogare un database relazionale e modellarne
DettagliCorso di. Basi di Dati I. 9. Esercitazioni in SQL: Check, asserzioni, viste
Corso di Basi di Dati 9. Esercitazioni in SQL: Check, asserzioni, viste A.A. 2016 2017 Check Come abbiamo visto, SQL permette di specificare vincoli sugli attributi e le tabelle attraverso il comando check
DettagliElena Baralis 2007 Politecnico di Torino 1
Linguaggio SQL: fondamenti Struttura di base Clausola WHEE Ordinamento del risultato Join unzioni aggregate Operatore GOU BY Istruzione SELECT: esempio di BD forniture prodotti Istruzione SELECT: esempio
DettagliIdoneita Informatica. Sistemi per la gestione di basi di Dati
Idoneita Informatica Sistemi per la gestione di basi di Dati Prof. Mauro Gaspari mauro.gaspari@unibo.it Rielaborazione delle slide del Dott. Matteo Magnani e del Dott. Nicola Dragoni 1 Sistema Informativo
DettagliBasi di dati (4) Docente: Andrea Bulgarelli. Università di Modena e Reggio Emilia. Argomento: select (1.
Università di Modena e Reggio Emilia Basi di dati (4) Docente: andrea.bulgarelli@gmail.com Argomento: select (1.0) 1 Panoramica Select Joins Subquery Wildcard Esempi 2 SELECT SELECT [DISTINCT] [TOP n]
DettagliSQL - 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
DettagliMonday, January 24, 2011 SQL
SQL SQL Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative l utente specifica quale informazione è di suo interesse, ma non come estrarla dai dati Le interrogazioni vengono
DettagliSQL - Sottointerrogazioni correlate
SQL - Sottointerrogazioni correlate negli esempi visti ogni subquery viene eseguita una volta per tutte ed il valore (o insieme di valori) è usato nella clausola WHERE della query esterna è possibile definire
DettagliOperatori derivati dagli insiemi. Algebra Relazionale. Unione. Operatori derivati dagli insiemi
Algebra Relazionale Linguaggio procedurale, cioè le operazioni vengono descritte attraverso la descrizione della sequenza di azioni da compiere per ottenere la soluzione. Operatori: unione intersezione
DettagliMODULO 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,
DettagliLinguaggi per Basi di Dati - 1. Algebra Relazionale. Algebra Relazionale. Linguaggi per Basi di Dati - 2. Operatori Insiemistici.
Linguaggi per Basi di Dati - 1 Università degli Studi di Trieste Corso di Laurea in Informatica D. Gubiani marzo 2008 Distinguiamo due classi di linguaggi per basi di dati : - linguaggi di definizione,
DettagliPROGETTAZIONE 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
DettagliINFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. INFORMATICA GENERALE Prof. Alberto Postiglione
INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno 2.3b: SQL (2) Interrogazioni semplici INFORMATICA GENERALE Prof. Alberto Postiglione Scienze
DettagliINFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno
: SQL (3) Tabelle multiple, variabili, operatori di aggregazione QUERIES SU PIU TABELLE Queries su più tabelle 17 mar 010 Dia 3 17 mar 010 Dia 4 Per formulare un interrogazione su più tabelle, la clausola
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL Operatori aggregati Nelle espressioni della target list possiamo avere anche espressioni che calcolano valori a partire da insiemi
DettagliLinguaggio SQL. studenti matricola nome cognome citta anno 11 marco bini bologna 1985 13 laura sicuro rimini 1984 esami codice
Linguaggio SQL Il linguaggio SQL (Structured Query Language) è il linguaggio standard per la definizione, manipolazione e interrogazione delle basi di dati relazionali sostenuti codice matricola anno voto
DettagliBasi di Dati. Dettagli e Approfondimenti SQL-92 25/02/2004. Dettagli e Approfondimenti. DDL: Tabelle. DML: Aggiornamenti.
Basi di Dati SQL-92 Dettagli e Approfondimenti SQL-92 >> Sommario Dettagli e Approfondimenti DDL: Tabelle valori di default vincoli di riferimento modifiche allo schema DDL: Viste definizione e uso DDL:
Dettagli