[Basi di dati]
Sia dato il seguente schema logico che descrive una partita ad un gioco da tavolo
Pezzi(codP, giocatore , pezzo)
Tab(codP , ordMossa, pezzo , x , y)
Mossa(codP , ordMossa , daX , aX , daY , aY , pezzo)
Eliminato(codP , ordMossa , Pezzo)
Dove Pezzi contiene il pezzo associato a quel giocatore in quella partita.
Mossa contiene le informazioni di una mossa: ovvero la casella di partenza e di arrivo di un pezzo.
Tab contiene per ogni partita e per ogni mossa la posizione di quel pezzo sulla scacchiera.
Eliminato contiene tutti i pezzi eliminati.
Mi si richiede di scrivere un'espressione in algebra relazionale che mi dia il nome del giocatore e il codice della partita in cui il giocatore ha perso tutti i pezzi.
Grazie mille.
Pezzi(codP, giocatore , pezzo)
Tab(codP , ordMossa, pezzo , x , y)
Mossa(codP , ordMossa , daX , aX , daY , aY , pezzo)
Eliminato(codP , ordMossa , Pezzo)
Dove Pezzi contiene il pezzo associato a quel giocatore in quella partita.
Mossa contiene le informazioni di una mossa: ovvero la casella di partenza e di arrivo di un pezzo.
Tab contiene per ogni partita e per ogni mossa la posizione di quel pezzo sulla scacchiera.
Eliminato contiene tutti i pezzi eliminati.
Mi si richiede di scrivere un'espressione in algebra relazionale che mi dia il nome del giocatore e il codice della partita in cui il giocatore ha perso tutti i pezzi.
Grazie mille.
Risposte
Prima di scrivere l'espressione in algebra relazionale è spesso utile cercare di capire come risolveresti tale problema se avessi quelle tabelle davanti agli occhi e ti venisse chiesta la stessa domanda. Come troveresti il giocatore?
Grazie per la risposta.
Il modo che ho trovato è quello di contare i pezzi che ha ogni giocatore e contare i pezzi eliminati per ogni giocatore e sembra funzionare, ma non so se è la soluzione ideale in quanto penso sia computazionalmente onerosa, pertanto se qualcuno ci riesce in un modo diverso ne sarei lieto
Il modo che ho trovato è quello di contare i pezzi che ha ogni giocatore e contare i pezzi eliminati per ogni giocatore e sembra funzionare, ma non so se è la soluzione ideale in quanto penso sia computazionalmente onerosa, pertanto se qualcuno ci riesce in un modo diverso ne sarei lieto


È l'unico metodo che viene in mente anche a me..