Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Introduzione all'utilizzo della clausola WHERE in SQL e ad esempi di query semplici, Sintesi del corso di Elementi di Informatica

Una introduzione alla clausola WHERE in SQL e presenta esempi di query semplici per selezionare righe da una tabella. Il documento include esercizi pratici per illustrare l'utilizzo di operatori relazionali, connettivi logici e la clausola SELECT. tratto da un corso di Fondamenti di Informatica presso l'Università di Salerno.

Tipologia: Sintesi del corso

2020/2021

Caricato il 02/02/2021

mazime39
mazime39 🇮🇹

2 documenti

1 / 8

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
1
DBMS – Linguaggio SQL
Prof. Alberto Postiglione
Università degli Studi di Salerno
Dipartimento di Scienze Aziendali -
Management & Innovation Systems
3.1: Interrogazioni Semplici
(parte 1)
Prof Alberto Postiglione (DISA-MIS) – Università di Salerno
DBMS 3 – Linguaggio SQL
3.1 – Interrogazioni Semplici (parte 1)
Atzeni, Ceri, Paraboschi, Torlone
Dichiaratività di SQL: Cap. 4.3.1
Interrogazioni semplici: Cap. 4.3.2, escluso:
Interrogazioni su più tabelle (Interr. 4 e 5 in “clausola from”)
Operatore like (presente in “clausola where”)
Gestione dei valori nulli
Interpretazione formale delle interrogazioni SQL
Duplicati
Join interni ed esterni
Uso di variabili
Guida realizzata dal Dipartimento del Tesoro (in pdf).
http://www.uniss.it/documenti/formazione/Guida_Dat
aBase_SQL.pdf
Bibliografia
Fondamenti di Informatica Dia 2
Prof Alberto Postiglione (DISA-MIS) – Università di Salerno
DBMS 3 – Linguaggio SQL
3.1 – Interrogazioni Semplici (parte 1)
SQL (Structured Query Language, pronunciato anche come
sequel) è il linguaggio per DBMS più implementato
Esso è un linguaggio di
definizione dei dati (DDL)
Agisce sulla struttura del DB
per la definizione di schemi e altre operazioni generali
interrogazione e aggiornamento dei dati (DML)
Agisce sul contenuto del DB.
inserimento, cancellazione e modifica di dati
interrogazione dei dati (per questo il DML è detto Query Language)
Noi siamo interessati alle sole funzionalità di interrogazione
dei dati (DML) di SQL
Le funzionalità DDL le realizziamo direttamente in ACCESS
SQL
Fondamenti di Informatica Dia 3
pf3
pf4
pf5
pf8

Anteprima parziale del testo

Scarica Introduzione all'utilizzo della clausola WHERE in SQL e ad esempi di query semplici e più Sintesi del corso in PDF di Elementi di Informatica solo su Docsity!

DBMS – Linguaggio SQL

Prof. Alberto Postiglione

Università degli Studi di Salerno

Dipartimento di Scienze Aziendali - Management & Innovation Systems

3.1: Interrogazioni Semplici

(parte 1)

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

 Atzeni, Ceri, Paraboschi, Torlone

• Dichiaratività di SQL: Cap. 4.3.

• Interrogazioni semplici: Cap. 4.3.2, escluso:

• Interrogazioni su più tabelle (Interr. 4 e 5 in “clausola from”)

• Operatore like (presente in “clausola where”)

• Gestione dei valori nulli

• Interpretazione formale delle interrogazioni SQL

• Duplicati

• Join interni ed esterni

• Uso di variabili

 Guida realizzata dal Dipartimento del Tesoro (in pdf).

• http://www.uniss.it/documenti/formazione/Guida_Dat

aBase_SQL.pdf

Bibliografia

Fondamenti di Informatica Dia 2

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

 SQL (Structured Query Language, pronunciato anche come

sequel) è il linguaggio per DBMS più implementato

 Esso è un linguaggio di

• definizione dei dati (DDL)

• Agisce sulla struttura del DB

• per la definizione di schemi e altre operazioni generali

• interrogazione e aggiornamento dei dati (DML)

• Agisce sul contenuto del DB.

• inserimento, cancellazione e modifica di dati

• interrogazione dei dati (per questo il DML è detto Query Language)

 Noi siamo interessati alle sole funzionalità di interrogazione

dei dati (DML) di SQL

• Le funzionalità DDL le realizziamo direttamente in ACCESS

SQL

Fondamenti di Informatica Dia 3

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno 3.1 – Interrogazioni Semplici (parte 1)

 Descritto teoricamente nel 1970 da Codd

 Progettato nel 1974 in IBM da Chamberlin e Boyce.

 Sviluppato

• negli anni '70 da IBM a San José per il DBMS “System R”

• L’Università di Berkeley nel suo RDBMS Ingres prima, e la

futura Oracle poi, contribuirono alla definizione dello standard.

 Dichiarato standard

• 1986 da ANSI (American National Standards Institute),

• 1987 da ISO (International Organization for Standards)

 Esistono più Dialetti di SQL. Il principale è:

• SQL-92 (detto anche SQL-2), ultima versione universalmente

accettata e corrisponde al nucleo del linguaggio; le sue regole

sintattiche sono identiche in ogni versione.

SQL

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

 SQL è un linguaggio dichiarativo

• specifichiamo l’obiettivo dell’interrogazione e non il

modo con cui ottenerlo

• È poi compito di una componente interna del DBMS (il

Query Optimization) trasformare l’interrogazione dal

formato dichiarativo al formato procedurale equivalente.

• Es. Si è appena scesi dal treno e si vuole prendere un

taxi per raggiungere il luogo di un incontro (" Piazza San

Francesco ")

• Linguaggio non dichiarativo : Prenda la prima a destra, poi al

secondo semaforo giri a sinistra, poi …”

• Linguaggio dichiarativo : “Mi porti a Piazza San Francesco”.

Dichiaratività di SQL

Fondamenti di Informatica Dia 5

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

SELECT A 1 , …, Ar (lista di attributi )

FROM R (tabella)

WHERE  (condizione )

 La clausola WHERE è facoltativa e può contenere

• gli operatori relazionali >, >=, <, ecc.,

• i connettivi logici AND, OR e NOT,

 L’istruzione SELECT seleziona

• tra le righe della tabella R

• quelle che soddisfano la condizione 

 Il risultato di una SELECT è una tabella che presenta

• Le colonne A 1 , …, A r nell’ordine dato dalla loro posizione

• Una riga per ogni riga selezionata dalla clausola WHERE

SELECT (su 1 tabella)

Fondamenti di Informatica Dia 6

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno 3.1 – Interrogazioni Semplici (parte 1)

Stipendio degli impiegati di cognome “Rossi”

QUERY 01 – QBE Stipendio annuo € 80.000, € 45.000, Operazione num. 3 : Condizioni di ricerca

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

Stipendio degli impiegati di cognome “Rossi”

QUERY 01 – Select/From/Where

Fondamenti di Informatica Dia 11

SELECT [Stipendio annuo]

FROM Impiegato

WHERE Cognome="Rossi";

Stipendio annuo € 80.000, € 45.000,

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

Estrarre lo stipendio degli impiegati di cognome “Rossi” assegnando al campo il nome “Salario”

QUERY 01bis - Alias su Attributi

Fondamenti di Informatica Dia 12

SELECT [Stipendio annuo] AS Salario

FROM Impiegato

WHERE Cognome="Rossi";

Salario € 80.000, € 45.000,

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno 3.1 – Interrogazioni Semplici (parte 1)

Tutti gli impiegati di cognome “Rossi”

QUERY 02 - Wildcard

SELECT *

FROM Impiegato

WHERE Cognome="Rossi";

WILDCARD Equivale ad elencare tutti i nomi dei campi nell’ordine in cui compaiono nella tabella input

Nome Cognome Dipartimento Ufficio Stipendio annuo Città Carlo Rossi Direzione € 80.000,00 Milano Mario Rossi Amministrazione 10 € 45.000,00 Milano

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

Cognome, Nome, Stipendio, Ufficio, Dipartimento, Città degli impiegati di cognome “Rossi”

QUERY 03 - Ordine delle colonne

Fondamenti di Informatica Dia 14

SELECT Cognome, Nome, [Stipendio annuo], Ufficio,

Dipartimento, Città

FROM Impiegato

WHERE Cognome="Rossi";

Cognome Nome Stipendio annuo Ufficio Dipartimento Città Rossi Carlo € 80.000,00 Direzione Milano Rossi Mario € 45.000,00 10 Amministrazione Milano

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1)

 SELECT può presentare come argomenti anche FUNZIONI definite su attributi o su costanti

QUERY 04 - Funzioni di tuple

Fondamenti di Informatica Dia 15

Nome, Cognome e stipendio mensile degli impiegati di cognome “Rossi”

SELECT Nome, Cognome,

[Stipendio annuo]/12 AS [Stipendio Mensile]

FROM Impiegato

WHERE Cognome=“Rossi”;

Nome Cognome Stipendio Mensile Carlo Rossi 6666, Mario Rossi 3750

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno 3.1 – Interrogazioni Semplici (parte 1) QUERY 08 - Condizioni multiple (3)

SELECT Nome, Dipartimento

FROM Impiegato

WHERE ( Dipartimento=“Amministrazione” OR

Dipartimento=“Produzione” ) AND

Cognome=“Rossi”

Nome Dipartimento Mario Amministrazione

Nome e Dipartimento degli impiegati che a) lavorano nel Dipartimento Amministrazione o nel Dipartimento Produzione e che b) hanno per cognome “Rossi”

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1) QUERY 08bis - ERRATA

Fondamenti di Informatica Dia 20

SELECT Nome, Dipartimento

FROM Impiegato

WHERE Dipartimento=“Amministrazione” OR

Dipartimento=“Produzione” AND

Cognome=‘Rossi’

Formulazione errata. Mancano le parentesi che isolano l’OR

Nome Dipartimento Anna Amministrazione Giuseppe Amministrazione Mario Amministrazione

Nome e Dipartimento degli impiegati che a) lavorano nel Dipartimento Amministrazione o nel Dipartimento Produzione e che b) hanno per cognome “Rossi”

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1) QUERY 09 - Ricerca in Intervalli

Fondamenti di Informatica Dia 21

SELECT *

FROM Impiegato

WHERE [Stipendio annuo]>= 40000 AND

[Stipendio annuo]<= 75000

T utti gli impiegati che hanno uno stipendio annuo compreso tra 40.000 e 75.000 Euro

Nome Cognome Dipartimento Ufficio Stipendio annuo Città Anna Bianco Amministrazione 75 € 40.000,00 Venezia Franco Neri Distribuzione 16 € 45.000,00 Napoli Giuseppe Verdi Amministrazione 20 € 40.000,00 Roma Lorenzo Gialli Direzione € 73.000,00 Genova Marco Franco Produzione 20 € 46.000,00 Roma Mario Rossi Amministrazione 10 € 45.000,00 Milano

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno 3.1 – Interrogazioni Semplici (parte 1) QUERY 09bis - BETWEEN ... AND

SELECT *

FROM Impiegato

WHERE [Stipendio annuo] BETWEEN 40000 AND 75000

T utti gli impiegati che hanno uno stipendio annuo compreso tra 40.000 e 75.000 Euro

Nome Cognome Dipartimento Ufficio Stipendio annuo Città Anna Bianco Amministrazione 75 € 40.000,00 Venezia Franco Neri Distribuzione 16 € 45.000,00 Napoli Giuseppe Verdi Amministrazione 20 € 40.000,00 Roma Lorenzo Gialli Direzione € 73.000,00 Genova Marco Franco Produzione 20 € 46.000,00 Roma Mario Rossi Amministrazione 10 € 45.000,00 Milano

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1) QUERY 10 – Senza Ordinamento

Fondamenti di Informatica Dia 23

Tutti gli impiegati che guadagnano almeno 45000 euro, ordinati rispetto alla chiave (modalità standard)

SELECT *

FROM Impiegato

WHERE [Stipendio annuo] >=

Nome Cognome Dipartimento Ufficio Stipendio annuo Città Carlo Rossi Direzione 14 € 80.000,00 Milano Franco Neri Distribuzione 16 € 45.000,00 Napoli Lorenzo Gialli Direzione 7 € 73.000,00 Genova Marco Franco Produzione 20 € 46.000,00 Roma Mario Rossi Amministrazione 10 € 45.000,00 Milano

Prof Alberto Postiglione (DISA-MIS) – Università di Salerno

DBMS 3 – Linguaggio SQL 3.1 – Interrogazioni Semplici (parte 1) QUERY 11 - Ordinamento della risposta

Fondamenti di Informatica Dia 24

Tutti gli impiegati che guadagnano almeno 45000 euro, ordinando la risposta in base allo Stipendio

SELECT *

FROM Impiegato

WHERE [Stipendio annuo] >=

ORDER BY [Stipendio annuo];

Nome Cognome Dipartimento Ufficio Stipendio annuo Città Mario Rossi Amministrazione 10 € 45.000,00 Milano Franco Neri Distribuzione 16 € 45.000,00 Napoli Marco Franco Produzione 20 € 46.000,00 Roma Lorenzo Gialli Direzione € 73.000,00 Genova Carlo Rossi Direzione € 80.000,00 Milano