POTENZIAMENTO - PARTE B
Scaricare questo file ZIP contenente le tabelle necessarie per l'esercitazione. La struttura di riferimento del DB è la seguente:
dove:
- La tabella studenti
contiene i dati anagrafici dello studente. Il campo
booleano Ripetente contiene True se lo studente è stato bocciato l'anno precedente
mentre il campo booleano Bocciato contiene true se è stato bocciato l'anno corrente
(sarà compilato a fine anno!).
- La tabella assenze
contiene le assenze degli studenti. Attenzione: il campo DataAssenza
è testuale. Il campo AssenzaTattica è booleano ed indica se la data
dell'assenza coincide con una verifica. Il campo Ore ammette
come possibili valori: 1 (assenza
durante tutta l'ora di lezione) R
(ritardo) G (assenza
giustificata per altre attività scolastiche autorizzate)
A (uscita prima della fine dell'ora)
- La
tabella verifiche contiene i voti delle verifiche. Attenzione
il campo DataVerifica è testuale. Il campo modulo
è il numero identificativo dell'argomento (1 per il primo modulo, 2 per il
secondon modulo etc.). Il voto (che è un
campo testuale!) assume i seguenti valori: intero da
1.. 10 (se è una valutazione effettiva)
+ (bonus)
- (penalty)
* (controllo esercitazione)
M (nota di merito)
V (richiamo verbale)
S (ammonizione scritta:
nota sul registro). Il votoIn100esimi è un campo numerico di tipo
double che contiene la reale valutazione numerica con 2 cifre decimali della prova.
- La
tabella colloqui contiene le registrazioni dei colloqui. Il
campo DataColloquio è di tipo data/ora. Il campo HaPrenotato
è booleano ed è impostato a true se lo studente ha effettuato la prenotazione
tramite web. Il campo QualeGenitore contiene il genitore che è
venuto a colloquio ("Mamma", "Papà",
"Entrambe", "Altro:
...")
ESERCIZIO 1 - IV-M2.5B.1 |
SCRIVERE I SEGUENTI COMANDI SQL MONOTABELLARI CHE RESTITUISCONO I RISULTATI SOTTOSTANTI - IN QUESTO ESERCIZIO NON SI POSSONO UTILIZZARE LE FUNZIONI VBA. L'OUTPUT DELLA VOSTRA SOLUZIONE DEVE RISPETTARE LA SEQUENZA DEI CAMPI ED EVENTUALI FORMATI.
a1)
Elenco dei
nominativi ("Cognome"+ "Nome") degli studenti di quarta maschi il
cui "cognome" inizia per "A"
a2)
Elenco dei colloqui (tutti i campi) effettuati
dal 16/2/2014 al
23/3/2014 oppure dal
20/4/2014 fino al termine dell'anno scolastico 2013-2014
(10/6/2014) dove non compare nel campo "QualeGenitore" la parola "Mamma" o "Papà"
a3)
Nominativo ("Cognome" + "Nome") e
"classe" dello studente che ha effettuato l'ultimo accesso al forum
a4)
Elenco
completo degli studenti ordinato per "classe", "cognome" e
"nome". L'elenco deve mostrare
unicamente il "Cognome", il "Nome" e la "Classe" all'interno di
un'unica colonna (esempio "Cognome Nome - Classe")
a5)
Elenco degli
studenti (tutti i campi!) che appartengono ad una determinata "classe" (la classe
viene richiesta
durante l'esecuzione della query). L'elenco deve essere ordinato per "nominativo"
a6)
Elenco degli
studenti (solo il "cognome") il cui cognome non contiene la lettera "A" ma che
inizia con "D" o "F"
a7)
Studente ("Cognome" + "Nome")
che ha
effettuato il maggior numero di accessi al registro
a8)
Elenco dei colloqui
infrasettimanali prenotati in cui è venuto il "nonno"
o la "nonna"
a9)
Elenco delle assenze tattiche che sono state fatte a partire dal
20/02/2014 fino alla fine del mese. Si osservi che il campo
"DataColloquio"
è testuale. Inoltre si ricorda che nell'Esercizio1 non è possibile utilizzare nessuna delle funzioni VBA.
a10)
Elenco degli studenti (solo "cognome" e "classe") di
seconda o di quarta che non hanno completato con
successo (ritirati o bocciati!) l'anno scolastico
ESERCIZIO 2 - IV-M2.5B.2 |
SCRIVERE I SEGUENTI COMANDI SQL MONOTABELLARI CHE RESTITUISCONO I RISULTATI SOTTOSTANTI - IN QUESTO ESERCIZIO SI POSSONO UTILIZZARE LE FUNZIONI VBA. L'OUTPUT DELLA VOSTRA SOLUZIONE DEVE RISPETTARE LA SEQUENZA DEI CAMPI ED EVENTUALI FORMATI.
b1)
Elenco ordinato delle verifiche
orali ("DataVerifica", "Voto" e
"Tipologia") di maggio o
gennaio effettuate di
lunedì con voto superiore a
"7".
Attenzione: I campi "DataVerifica" e "Voto" sono testuali!
b2)
Elenco degli studenti
(solo il "cognome") il cui cognome ha la seconda
lettera uguale alla penultima e il numero dei caratteri è superiore a
3
b3)
Elenco dei colloqui prenotati che si sono svolti di
mercoledì o sabato nell'anno
2013.
b4)
Elenco degli studenti ("cognome", "nome"
e "classe") che presentano nel "cognome" almeno 2 lettere "A" ed
anche
2 lettere "C" (anche non
consecutive!)
b5)
Elenco delle verifiche scritte
sufficienti svolte dopo il 25-esimo giorno di
un qualsiasi mese il cui "voto" differisce da quello di riferimento contenente
anche 2 decimali
(campo "VotoIn100esimi") di al massimo di
0,02. Il campo "VotoIn100esimi" è
di tipo
double.
b6)
Elenco delle verifiche orali con voto pari a
6 relative al primo
modulo che si sono svolte l'ultimo giorno di un qualsiasi mese
b7)
Elenco delle verifiche del 31 maggio
2014 non relative al modulo "3" con
valutazione diversa da 5 e
6
b8)
Elenco degli studenti di "3T",
ordinati per "cognome" e "nome",
che mostri
i seguenti "esiti":
Si ricorda che il campo
booleano "Ripetente"
è posto a true se lo studente è stato bocciato l'anno precedente
mentre il campo "Bocciato"
contiene true se è stato bocciato l'anno corrente.
b9)
Elencare le
valutazioni finali delle verifiche (campo "Voto"
rinominato in "Voto definitivo") con a fianco la valutazione associata basata su cifre con i decimali
(campo "votoIn100esimi").
Mostrare inoltre la differenza tra le 2 valutazioni ed indicare se rispetto al "Voto
definitivo" ho effettuato un'aggiunta,
una sottrazione o niente (stringa vuota "") nel caso i due voti coincidano.
b10)
Elencare, sulla base
di una specifica richiesta, i maschi
oppure le femmine oppure tutti gli studenti di una "classe" digitata da tastiera
ESERCIZIO 3 - IV-M2.5B.3 |
SCRIVERE I SEGUENTI COMANDI SQL MONOTABELLARI STATISTICI CHE RESTITUISCONO I RISULTATI SOTTOSTANTI - IN QUESTO ESERCIZIO SI POSSONO UTILIZZARE LE FUNZIONI VBA. L'OUTPUT DELLA VOSTRA SOLUZIONE DEVE RISPETTARE LA SEQUENZA DEI CAMPI ED EVENTUALI FORMATI.
c1)
Numero studenti per "classe".
c2)
Numero di
verifiche per mese. L'elenco, ordinato in modo cronologico,
deve presentare il nome del mese seguito dall'anno.
c3)
Numero totale di studenti
c4)
Totale ore di
assenza per giorno
della settimana (l'elenco deve essere ordinato partendo dalla
domenica fino a
sabato)
c5)
Numero totale dei ritardi (il campo
"Ore" nella
tabella Assenze nel caso di un ritardo contiene il carattere "R")
c6)
Numero totale di
studenti maschi e femmine indicato su 2 righe
distinte
c7)
Numero totale di studenti maschi e
femmine indicato su 2 colonne distinte (non si può usare una query incrociata!)
c8)
Totale
colloqui
effettuati, prenotati e percentuale dei prenotati rispetto al totale dei colloqui svolti.
c9)
Fornire la distribuzione delle
verifiche per singolo "voto" ovvero il
numero di
verifiche che hanno avuto come esito un determinato voto e questo per ogni voto
c10)
Distribuzione per
fascia oraria dell'ultimo accesso al forum. In
altre parole per ogni ora del giorno deve visualizzare quanti "ultimi accessi al forum" si sono
verificati in quella fascia. L'orario dell'ultimo accesso è all'interno del
campo "UltimoAccessoAlForum" della tabella studenti!
ESERCIZIO 4 - IV-M2.5B.4 |
SCRIVERE I SEGUENTI COMANDI SQL MULTITABELLARI CHE RESTITUISCONO I RISULTATI SOTTOSTANTI - IN QUESTO ESERCIZIO SI POSSONO UTILIZZARE LE FUNZIONI VBA. L'OUTPUT DELLA VOSTRA SOLUZIONE DEVE RISPETTARE LA SEQUENZA DEI CAMPI ED EVENTUALI FORMATI.
d1)
Elenco dei ritardi di ottobre relativi al biennio. Deve essere visualizzato il
"Cognome", "Nome" e "DataAssenza". Attenzione il campo DataAssenza
contenuto nella tabella assenze è testuale!
d2)
Nominativo
("Cognome" e "Nome") dello studente di "5N" che
ha fatto il primo ritardo in quella classe (il campo "ore"
della tabella assenze contiene nel caso di
un ritardo la lettera "R"!)
d3)
Media e varianza dei voti distinto per "classe".
Attenzione il campo "voto" della tabella verifiche
è testuale e potrebbe talvolta non contenere valori numerici (che vanno quindi
esclusi!). Inoltre i dati relativi alle statistiche richieste devono
presentare al massimo 2 decimali
d4)
Media dei voti sufficienti per "classe". Attenzione il campo "voto" della tabella verifiche
è testuale e potrebbe talvolta non contenere valori numerici (che vanno quindi
esclusi!). Inoltre i valori relativi alle statistiche richieste devono
presentare al massimo 2 decimali
d5)
Nominativo dello
studente con il maggior numero di assenze (Attenzione il campo
"ore"
della tabella assenze contiene un valore numerico
solo quando si tratta di una assenza effettiva!)
d6)
Relativamente alla materia
"informatica" fornire in un'unica query le seguenti statistiche :
Attenzione il campo
"voto" della tabella
verifiche è di tipo testuale!
Il nome della materia è reperibile nel campo "materia" della
tabella _CfgSys_Materie.
d7)
Nominativo
dello studente con il maggior numero di assenze. Il campo
"ore" nella tabella
assenze è
testuale e contiene un simbolo numerico solo quando si tratta di una
assenza!
d8)
Numero di
assenze per ogni
studente con
almeno un'assenza
d9)
Numero di
assenze per ogni
studente (per quelli che non sono
mai
stati assenti deve comparire 0!)
d10)
Elenco degli
studenti
("cognome", "nome" e "classe") che non hanno
avuto ne assenze, ne
ritardi, ne uscite anticipate (non è ammesso l'uso di sottoquery!).
ESERCIZIO 5 - IV-M2.5B.5 |
SCRIVERE I SEGUENTI COMANDI SQL CHE RESTITUISCONO I RISULTATI INDICATI - IN QUESTO ESERCIZIO SI POSSONO UTILIZZARE LE FUNZIONI VBA. L'OUTPUT DELLA VOSTRA SOLUZIONE DEVE RISPETTARE LA SEQUENZA DEI CAMPI ED EVENTUALI FORMATI.
e1)
Numero totale di studenti maschi e femmine per
"classe"
(è una query incrociata!)
e2)
Numero di verifiche per mese e per "classe" (è una query
incrociata)
e3)
Elenco degli studenti di 1T o
2Q che non hanno ne assenze (il campo "ore" in assenze contiene il simbolo numerico
"1" quando si tratta di una assenza per tutta
l'ora!) ne
ritardi (in questo caso "ore" contiene il simbolo
"R"!). Attenzione si deve usare una
sottoquery.
e4)
Elenco degli studenti che hanno avuto almeno
6 verifiche nel mese di
maggio. Attenzione si deve usare una
sottoquery.
e5)
Creare la tabella
_tmp_EstrazioneAlunni cosi definita: