FORUM DEL CORSO DI BASI DI DATI

Forum del corso di Basi di Dati - Ingegneria Gestionale - Università di Roma La Sapienza


    [2 ESERCITAZIONE] - Algebra Relazionale

    Condividi
    avatar
    theoracle

    Maschio
    Numero di messaggi : 4
    Età : 32
    Occupazione/Hobby : quasi studente
    Data d'iscrizione : 13.03.09

    ESERCITAZIONE 2

    Messaggio Da theoracle il Ven Mar 20, 2009 6:26 pm

    Avrei alcune domande sul primo esercizio della seconda esercitazione.... In particolare sul punto 7...
    Cosa si intende per tutti i pezzi rossi o verdi?? mi spiego meglio uno stesso pezzo con pid diverso ma con nome uguale e colore rosso o verde??

    Sul punto 8 invece tutti i pezzi rossi oppure tutti i pezzi verdi si intende i pezzi che sono solo rossi o quelli che sono solo verdi??

    spero di essere stato chiaro....

    Dayel

    Maschio
    Numero di messaggi : 1
    Età : 30
    Occupazione/Hobby : Studente
    Data d'iscrizione : 06.03.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da Dayel il Sab Mar 21, 2009 1:10 am

    Salve professore,approfitto anche io per porre una domanda: a proposito della relazione "Catalogo" che è presentata nell'esercitazione, come dovrei rappresentare, dal punto di vista della sintassi di MySQL, il fatto che esistano due campi che devono costituire una chiave? Ovviamente immagino che due "primary key" non possano coesistere, così ho provato a scrivere semplicemente "key" accanto ai campi in questione ma con scarsi risultati...

    Rumbero83

    Maschio
    Numero di messaggi : 3
    Età : 35
    Occupazione/Hobby : ballerino
    Data d'iscrizione : 13.03.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da Rumbero83 il Sab Mar 21, 2009 11:31 am

    Prova ad inserire il comando UNIQUE( ... ) CONSTRAINT ChiaveCatalogo PRIMARY KEY( ... ) non dovrebbe darti errore...comunque a pg. 30/31 del libro c'è proprio scritto come si fa ed è senz' altro più chiaro di me study ...ciao

    A.Marrella
    Admin

    Maschio
    Numero di messaggi : 72
    Età : 36
    Occupazione/Hobby : Tutor
    Data d'iscrizione : 26.02.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da A.Marrella il Sab Mar 21, 2009 2:41 pm

    theoracle ha scritto:Avrei alcune domande sul primo esercizio della seconda esercitazione.... In particolare sul punto 7...
    Cosa si intende per tutti i pezzi rossi o verdi?? mi spiego meglio uno stesso pezzo con pid diverso ma con nome uguale e colore rosso o verde??

    Si intende la ricerca dei fid di tutti quei fornitori che vendono SOLO pezzi rossi o verdi (possono vendere una "combinazione" dei due colori....un po' rossi, un po' verdi...ma non di altri colori)

    theoracle ha scritto:
    Sul punto 8 invece tutti i pezzi rossi oppure tutti i pezzi verdi si intende i pezzi che sono solo rossi o quelli che sono solo verdi??

    Si!

    Dayel ha scritto:Salve professore,approfitto anche io per porre una domanda: a proposito della relazione "Catalogo"
    che è presentata nell'esercitazione, come dovrei rappresentare, dal punto di vista della sintassi di MySQL, il fatto
    che esistano due campi che devono costituire una chiave? Ovviamente immagino che due "primary key" non possano coesistere,
    così ho provato a scrivere semplicemente "key" accanto ai campi in questione ma con scarsi risultati...
    La chiave primaria è unica nella relazione. Può però impostare una chiave primaria su più campi...
    CREATE TABLE(
    nome char(20),
    cognome char(20),
    primary key(nome,cognome)
    );

    oppure, se non vuole che la chiave sia primaria (ovvero che può ammettere valori nulli)...
    CREATE TABLE(
    nome char(20),
    cognome char(20),
    unique(nome,cognome)
    );


    Questi argomenti li tratteremo comunque nella prossima esercitazione...per ora concentratevi solo ad elaborare le interrogazioni proposte in algebra relazionale.

    matteo87

    Maschio
    Numero di messaggi : 1
    Età : 31
    Occupazione/Hobby : studente/calcio
    Data d'iscrizione : 25.03.09

    esercitazione 2

    Messaggio Da matteo87 il Mer Mar 25, 2009 1:47 am

    Gentile professore, volevo farle presente che il punto 9 dell'esercizio 1 è stato interpretato da me diversamente(ovvero coppie di fornitori con fid diverso ma che vendono lo stesso prodotto a un prezzo diverso),
    il punto 10 , mi corregga se sbaglio, dovrebbe ritornare la proiezione sul pid ;il punto 12 non presenta al momento soluzione; le pongo questi problemi(in particolare il primo) perchè anche a lezione(canale A-L)ogni tanto si creano della ambiguità sull'interpretazione degli enunciati richiesti.
    La ringrazio anticipatamente
    avatar
    elsa

    Femmina
    Numero di messaggi : 3
    Età : 31
    Occupazione/Hobby : ------
    Data d'iscrizione : 17.03.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da elsa il Ven Mar 27, 2009 7:59 pm

    salve prof.
    volevo chiederle se fosse errato (ad esempio nell'esercizio 1.1) proiettare esclusivamente il nome dei fornitori senza il fid e il pid
    invece nel 1.6 non avrei potuto utilizzare l'operatore differenza anzichè quello di divisione?
    o ancora,è importante l'ordine con cui si scrivono le relazioni attraverso il join?
    ed infine (domanda O.T.) le slides che ha spiegato giovedì (per il canale a-l) quando verranno aggiunte sul sito?
    grazie Very Happy

    A.Marrella
    Admin

    Maschio
    Numero di messaggi : 72
    Età : 36
    Occupazione/Hobby : Tutor
    Data d'iscrizione : 26.02.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da A.Marrella il Dom Mar 29, 2009 9:36 pm

    Buonasera,
    scusate il ritardo nella risposta, ma sono stato molto impegnato la scorsa settimana.
    La soluzione relativa all'esercizio di riepilogo sull'alg.relazionale che ho proposto alcuni giorni fa era PROVVISORIA (come riportato sulla mia pag. WEB), quindi ancora incompleta e non ricontrollata. Il fatto che molti di voi mi abbiano notificato soluzioni alternative è molto positivo....significa che gli esercizi ogni tanto li fate Very Happy Ho comunque provveduto ad inserire la soluzione DEFINITIVA!
    Voglio ricordare che la soluzione proposta agli esercizi di riepilogo è una delle possibili soluzioni tra le tante possibili per formulare un'interrogazione...perciò, se voi trovate un'altra soluzione alternativa, non necessariamente significa sia sbagliata.
    elsa ha scritto:salve prof.
    volevo chiederle se fosse errato (ad esempio nell'esercizio 1.1) proiettare esclusivamente il nome dei fornitori senza il fid e il pid

    Sarebbe corretto...l'utilizzo del fid e del pid nelle proiezioni migliora la "leggibilità" dei risultati intermedi....ma non è necessaria. Perciò la sua valutazione è corretta Very Happy

    elsa ha scritto:invece nel 1.6 non avrei potuto utilizzare l'operatore differenza anzichè quello di divisione?
    No. L'operatore di differenza può essere applicato SOLO a relazioni che hanno lo stesso numero di campi. Nella 1.6 la divisione resta la soluzione più "veloce" per calcolare il risultato

    elsa ha scritto:o ancora,è importante l'ordine con cui si scrivono le relazioni attraverso il join?
    Diepende. Per il JOIN naturale ed il JOIN condizionale non è importante....lo è invece per l'EQUI JOIN, in cui è differente scrivere:
    R1 JOINr1.a=r2.b R2
    R2 JOINr2.b=r2.a R1
    Nel primo caso, la relazione risultato non contiene r2.b....invece nel secondo caso non contiene r2.a...
    matteo87 ha scritto:Gentile professore, volevo farle presente che il punto 9 dell'esercizio 1 è stato interpretato da me diversamente(ovvero coppie di fornitori con fid diverso ma che vendono lo stesso prodotto a un prezzo diverso),
    L'idea è parzialmente corretta, perchè così facendo nella soluzione si potrebbero trovare coppie di fornitori in cui il primo fornitore vende un pezzo ad un prezzo minore del secondo (infatti, affinchè la condizione sia soddisfatta, nella sua formulazione, basta che i pezzi abbiano prezzi differenti)......ciò non sarebbe però coerente con le specifiche del problema, in cui si chiede che il primo fornitore venda un pezzo ad un prezzo maggiore del secondo.
    matteo87 ha scritto:il punto 10 , mi corregga se sbaglio, dovrebbe ritornare la proiezione sul pid
    CORRETTO! Grazie...tra fid, pid sid....mi rimbambisco anch'io Razz preferisco Matricole, Nomi e Cognomi.... What a Face
    matteo87 ha scritto:il punto 12 non presenta al momento soluzione;
    SOLUZIONE 12 AGGIUNTA!!!!
    Anche in questo caso risulta molto comodo l'operatore di divisione!

    matteo87 ha scritto:le pongo questi problemi(in particolare il primo) perchè anche a lezione(canale A-L)ogni tanto si creano della ambiguità sull'interpretazione degli enunciati richiesti.
    La ringrazio anticipatamente
    Fa bene a pormi queste domande....è fondamentale sempre cercare di capire cosa si vuole ottenere dall'interrogazione...a quel punto il gioco è quasi fatto.
    avatar
    DODIMATTO

    Maschio
    Numero di messaggi : 6
    Età : 32
    Occupazione/Hobby : Studente
    Data d'iscrizione : 09.03.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da DODIMATTO il Mer Apr 01, 2009 2:16 am

    Due dubbi che mi son sorti svolgendo l'esercitazione:
    Nel punto 1.3 si deve per forza ridenominare le relazioni per poi fare l'unione?
    Nel punto 1.9 è corretto applicare il Join Condizionale facendo un'opportuna ridenominazione?

    A.Marrella
    Admin

    Maschio
    Numero di messaggi : 72
    Età : 36
    Occupazione/Hobby : Tutor
    Data d'iscrizione : 26.02.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da A.Marrella il Mer Apr 01, 2009 2:46 am

    DODIMATTO ha scritto:Due dubbi che mi son sorti svolgendo l'esercitazione:
    Nel punto 1.3 si deve per forza ridenominare le relazioni per poi fare l'unione??
    No. Le ridenominazioni in questo caso aumentano la leggibilità della soluzione, ma non sono necessarie. Può fare tranquillamente l'unione delle due formule complesse che nella soluzione vengono ridenominate come R1 e R2
    DODIMATTO ha scritto:
    Nel punto 1.9 è corretto applicare il Join Condizionale facendo un'opportuna ridenominazione?
    Dipende....mi faccia vedere un esempio della formula che vorrebbe inserire, così la commentiamo e vediamo se è giusta Wink
    avatar
    DODIMATTO

    Maschio
    Numero di messaggi : 6
    Età : 32
    Occupazione/Hobby : Studente
    Data d'iscrizione : 09.03.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da DODIMATTO il Mer Apr 01, 2009 12:19 pm

    A.Marrella ha scritto:
    DODIMATTO ha scritto:
    Nel punto 1.9 è corretto applicare il Join Condizionale facendo un'opportuna ridenominazione?
    Dipende....mi faccia vedere un esempio della formula che vorrebbe inserire, così la commentiamo e vediamo se è giusta Wink

    Allora, io ho fatto così
    1.9
    rho (R, (1->fid1, 2->pid1, 3->costo1, 4->fid2, 5->pid2, 6->costo2), CATALOGO JOIN costo1> costo2 CATALOGO)
    Pigreco fid1, fid2 (R)

    analogamente per l'esercizio 1.10
    rho (R, (1->fid1, 2->pid1, 3->costo1, 4->fid2, 5->pid2, 6->costo2), CATALOGO JOIN fid1 != fid2 CATALOGO)
    Pigreco pid1,pid2 (R)

    A.Marrella
    Admin

    Maschio
    Numero di messaggi : 72
    Età : 36
    Occupazione/Hobby : Tutor
    Data d'iscrizione : 26.02.09

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da A.Marrella il Ven Apr 03, 2009 2:06 am

    DODIMATTO ha scritto:
    A.Marrella ha scritto:
    DODIMATTO ha scritto:
    Nel punto 1.9 è corretto applicare il Join Condizionale facendo un'opportuna ridenominazione?
    Dipende....mi faccia vedere un esempio della formula che vorrebbe inserire, così la commentiamo e vediamo se è giusta Wink

    Allora, io ho fatto così
    1.9
    rho (R, (1->fid1, 2->pid1, 3->costo1, 4->fid2, 5->pid2, 6->costo2), CATALOGO JOIN costo1> costo2 CATALOGO)
    Pigreco fid1, fid2 (R)

    analogamente per l'esercizio 1.10
    rho (R, (1->fid1, 2->pid1, 3->costo1, 4->fid2, 5->pid2, 6->costo2), CATALOGO JOIN fid1 != fid2 CATALOGO)
    Pigreco pid1,pid2 (R)

    Entrambe le interrogazioni vanno bene....infatti, riferendomi agli esempi cui lei fa riferimento, il join condizionale non è altro che una select sul prodotto cartesiano.

    Contenuto sponsorizzato

    Re: [2 ESERCITAZIONE] - Algebra Relazionale

    Messaggio Da Contenuto sponsorizzato


      La data/ora di oggi è Sab Nov 17, 2018 1:52 pm