Come è noto, la funzione DATEADD, molto pratica per aggiungere un qualsivoglia numero di giorni ad una data, non è disponibile nella versione incorporata (embedded) di HSQLDB 1.8 di Base, ma lo è soltanto a partire dalla versione 2.x.
Come superare l’ostacolo?
Si può fare utilizzando una tabella di appoggio contenente un numero appropriato di date consecutive e quindi effettuare un confronto in una query fra la data a cui aggiungere dei giorni e l’elenco appositamente creato.
- Per creare la tabella di appoggio possiamo utilizzare Calc. Una volta aperto un foglio basta digitare sulla prima riga di una colonna una data di partenza e poi trascinare verso il basso con il mouse per ottenere l’elenco che ci serve. Se, ad esempio dobbiamo aggiungere dei giorni inferiore a 365 ad una data del 2016 basterà partire dalla data di oggi e trascinare in basso fino al 31/12/2016.
- Successivamente occorre copiare il contenuto della colonna di Calc per creare una tabella di Base.
– Evidenziamo l’elenco di date, clic destro > Copia
– Apriamo Base e nello spazio vuoto della zona Tabelle, clic destro > Incolla
– Nella finestra successiva indichiamo il nome della nostra tabella e poi fare clic su
Next
– Spostare il campo date da sinistra a destra con il tasto > e poi fare clic su Next
– Diamo un nome al campo (ad esempio: Date) e selezioniamo il tipo campo: Data e
facciamo clic su Crea
– Rispondiamo Sì alla richiesta di creare una chiave primaria e troveremo pronta la
tabella. - Creiamo una query in vista SQL e scriviamo il codice:
SELECT “Tabella_Date”.”Data”, “Vostra_Tabella”.”Data_Partenza”, “Vostra_Tabella”.”Numero” FROM “Tabella_Date”, “Vostra_Tabella” WHERE “Vostra_Tabella”.”Numero” = DATEDIFF( ‘dd’, “Vostra_Tabella”.”Data_Partenza”, “Tabella_Date”.”Data” )
dove:
Tabella_Date è la tabella creata con l”aiuto di Calc
Vostra_Tabella è la tabella di lavoro
Data_Partenza è la data alla quale aggiungere gioni
Numero sono i giorni da aggiungere.
- Scaricare qui file di esempio