Salve ragazzi, avrei bisogno di aiuto.
Ho un programma che deve cercare un lotto libero all'interno del DB. Vi spiego meglio: Ho una tabella coltivazioni che ha come colonne tipologia, data inizio, data fine e id del lotto(varchar, date, date,int ).
poi ho una tabella lotti che ha gli id dei lotti e delle serre all'interno delle quali sono contenute (int, int).
Ho bisogno, possibilmente a livello DB, di una query che mi permetta di cercare i lotti che sono disponibili, i quali, cioè risultino non occupati alla data odierna.
Il problema sorge perchè non so come impostare questa query e quali operatori utilizzare, inoltre un ulteriore problema e relativo al dominio: non c'è fatto alcun riferimento all'interno della traccia della necessità di tenere uno storico delle coltivazioni(e di tenere salvate quindi, coltivazioni che vengono sostituite), ma se volessi tenerlo, non saprei come selezionare la tupla più recente tra quelle che risulterebbero per uno stesso lotto e come implementare la ricerca nel DB. Sapete darmi un indirizzo?
Il mio problema sorge dal fatto che non so come cercare sulla combinazione delle due tabelle: devo tener conto della possibilità che un lotto possa essere libero, e quindi non ci siano coltivazioni salvate sul db e devo anche conciliare la ricerca eventuale del lotto la cui coltivazione abbia una data di terminazione inferiore a quella odierna.
Stavo pensando ad una soluzione alternativa in cui, ogni lotto è già salvato nel DB nella tabella coltivazioni( anche se non ci sono coltivazioni presenti) con i campi tipologia, inizio e fine vuoti. Questa soluzione mi permetterebbe di avere più semplicità nella ricerca (anche se non so come verrebbero riconosciuti i campi vuoti rispetto alle operazioni di confronto delle date) ma poi esulerebbe un po' dalle responsabilità che avevo assegnato alla classe entityLotto del mio BCED
P.S. ho dimenticato di specificare che dovrei implementare una soluzione che non faccia uso di query innestate in quanto, in sede di esame, la versione mysql sarà precedente alla versione 4.1 che ha implementato la possibilità di utilizzarle
P.P.S. ciò per cui vi sto chiedendo aiuto non è un esame, è una tracia di esercitazione che stavo provando a svolgere
Grazie mille
Ho un programma che deve cercare un lotto libero all'interno del DB. Vi spiego meglio: Ho una tabella coltivazioni che ha come colonne tipologia, data inizio, data fine e id del lotto(varchar, date, date,int ).
poi ho una tabella lotti che ha gli id dei lotti e delle serre all'interno delle quali sono contenute (int, int).
Ho bisogno, possibilmente a livello DB, di una query che mi permetta di cercare i lotti che sono disponibili, i quali, cioè risultino non occupati alla data odierna.
Il problema sorge perchè non so come impostare questa query e quali operatori utilizzare, inoltre un ulteriore problema e relativo al dominio: non c'è fatto alcun riferimento all'interno della traccia della necessità di tenere uno storico delle coltivazioni(e di tenere salvate quindi, coltivazioni che vengono sostituite), ma se volessi tenerlo, non saprei come selezionare la tupla più recente tra quelle che risulterebbero per uno stesso lotto e come implementare la ricerca nel DB. Sapete darmi un indirizzo?
Il mio problema sorge dal fatto che non so come cercare sulla combinazione delle due tabelle: devo tener conto della possibilità che un lotto possa essere libero, e quindi non ci siano coltivazioni salvate sul db e devo anche conciliare la ricerca eventuale del lotto la cui coltivazione abbia una data di terminazione inferiore a quella odierna.
Stavo pensando ad una soluzione alternativa in cui, ogni lotto è già salvato nel DB nella tabella coltivazioni( anche se non ci sono coltivazioni presenti) con i campi tipologia, inizio e fine vuoti. Questa soluzione mi permetterebbe di avere più semplicità nella ricerca (anche se non so come verrebbero riconosciuti i campi vuoti rispetto alle operazioni di confronto delle date) ma poi esulerebbe un po' dalle responsabilità che avevo assegnato alla classe entityLotto del mio BCED
P.S. ho dimenticato di specificare che dovrei implementare una soluzione che non faccia uso di query innestate in quanto, in sede di esame, la versione mysql sarà precedente alla versione 4.1 che ha implementato la possibilità di utilizzarle
P.P.S. ciò per cui vi sto chiedendo aiuto non è un esame, è una tracia di esercitazione che stavo provando a svolgere
Grazie mille