RaouL_BennetH
21-05-2010, 11:13
Ciao a tutti :)
Ho difficoltà ad ottenere questo risultato:
-assicurazione veicolo:
importo 1.000,00
inizio copertura = 30/04/2009
fine copertura = 30/04/2010
durata (differenza in mesi fra le date, in questo caso...) = 12
-affidamento del veicolo
affidatario
inizio noleggio = 01/01/2009
fine noleggio = 31/12/2009
- tabella calendario
contiene un unico campo data composto da:
anno-mese-giorno
Le due tabelle hanno in comune l'id del veicolo.
Ho proceduto così':
CREATE VIEW vCostiAssicurazione
AS
SELECT a.targa AS targa,
(a.importo / a.durata) AS importo,
c.data AS dataRiferimento,
af.affidatario AS affidatario,
FROM
assicurazioni a
JOIN
affidamenti af ON a.id_veicolo = af.id_veicolo
JOIN
calendar c
WHERE
c.data BETWEEN af.inizioNoleggio AND af.termineNoleggio
ora, il mio problema è che facendo "importo / durata" (nel mio caso 12)
ovviamente non ottengo una ripartizione corretta relativa al periodo in cui l'affidatario possiede il veicolo.
Il mio "durata" dovrebbe essere dato dalla differenza in mesi del periodo di affidamento rispetto al periodo di copertura.
Come posso fare ?
grazie mille :)
RaouL.
Ho difficoltà ad ottenere questo risultato:
-assicurazione veicolo:
importo 1.000,00
inizio copertura = 30/04/2009
fine copertura = 30/04/2010
durata (differenza in mesi fra le date, in questo caso...) = 12
-affidamento del veicolo
affidatario
inizio noleggio = 01/01/2009
fine noleggio = 31/12/2009
- tabella calendario
contiene un unico campo data composto da:
anno-mese-giorno
Le due tabelle hanno in comune l'id del veicolo.
Ho proceduto così':
CREATE VIEW vCostiAssicurazione
AS
SELECT a.targa AS targa,
(a.importo / a.durata) AS importo,
c.data AS dataRiferimento,
af.affidatario AS affidatario,
FROM
assicurazioni a
JOIN
affidamenti af ON a.id_veicolo = af.id_veicolo
JOIN
calendar c
WHERE
c.data BETWEEN af.inizioNoleggio AND af.termineNoleggio
ora, il mio problema è che facendo "importo / durata" (nel mio caso 12)
ovviamente non ottengo una ripartizione corretta relativa al periodo in cui l'affidatario possiede il veicolo.
Il mio "durata" dovrebbe essere dato dalla differenza in mesi del periodo di affidamento rispetto al periodo di copertura.
Come posso fare ?
grazie mille :)
RaouL.