[Risolto]Operazioni con le date

Discussioni sulle caratteristiche di database
Rispondi
lino.codeluppi
Messaggi: 22
Iscritto il: venerdì 5 novembre 2021, 16:24

[Risolto]Operazioni con le date

Messaggio da lino.codeluppi »

Buonasera a tutti,
Avrei un problema che non riesco a risolvere...
In una ricerca vorrei sottrarre un determinato numero di settimane ad una data, ma spulciando qua e la non ho trovato esempi validi...
ho trasformato le settimane in giorni, ma successivamente mi sono bloccato sul corretto utilizzo di datevalue e dateserial (per poter fare agevolmente la sottrazione)
qualche suggerimento?
Grazie in anticipo..
Ultima modifica di lino.codeluppi il venerdì 5 novembre 2021, 19:34, modificato 1 volta in totale.
LibreOffice 7.1.2.2
Windows 10.0
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 9056
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Operazioni con le date

Messaggio da charlie »

Ciao, per facilitare l'aiuto posta un semplice esempio con la tabella su cui lavorare, anche con pochi dati. Grazie.
charlie
macOS 15.5 Sequoia: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
lino.codeluppi
Messaggi: 22
Iscritto il: venerdì 5 novembre 2021, 16:24

Re: Operazioni con le date

Messaggio da lino.codeluppi »

Per fare un po' rapidamente posto un paio di screenshot il file intero che ha solo alcuni dati di prova è circa 7 MB.... :shock:
Eventualmente per evitarvi ulteriori rotture posso fare un piccolo file ad ok
In pratica vorrei ricavare automaticamente la data di nascita partendo dalla data di arrivo e dall'età per poi inserire correttamente ulteriori dati a cascata
Allegati
ricerca sulla quale vorrei "operare"
ricerca sulla quale vorrei "operare"
tabella origine
tabella origine
LibreOffice 7.1.2.2
Windows 10.0
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 9056
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Operazioni con le date

Messaggio da charlie »

Il motore HSQLDB 1.8 incorporato in Base, non fornisce funzioni utili al tuo calcolo, percui occorre "arrangiarsi".
Supponendo di avere una tabella con campi ID, Data Arrivo e Settimane, la query che segue calcola dapprima la differenza in giorni della Data Arrivo con il 01/01/1900, poi toglie il numero delle settimane convertite in giorni (l'aggiunta di +2 corregge un errore nel calcolo introdotto dalla funzione DATEDIFF).
Il risultato viene visualizzato nel formato data "seriale", ma basta un clic destro sulla colonna e scegliere Formattazione colonna per riportarlo al formato consueto. Se poi si usa la query in un formulario (come penso) la conversione di formato diventa stabile.

Codice: Seleziona tutto

SELECT "ID", "Data Arrivo", "Settimane", DATEDIFF( 'DD', '1900-01-01', "Data Arrivo" ) - "Settimane"*7 + 2 AS "Nuova Data" FROM "Tabella1"
Allegati
Sottrazione_Settimane.odb
(3.67 KiB) Scaricato 114 volte
charlie
macOS 15.5 Sequoia: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
lino.codeluppi
Messaggi: 22
Iscritto il: venerdì 5 novembre 2021, 16:24

Re: Operazioni con le date

Messaggio da lino.codeluppi »

Per la miseria....
sei un fulmine
grazie
ci spippolo un po' e ti aggiorno....
LibreOffice 7.1.2.2
Windows 10.0
lino.codeluppi
Messaggi: 22
Iscritto il: venerdì 5 novembre 2021, 16:24

Re: Operazioni con le date

Messaggio da lino.codeluppi »

Sono Basito... :bravo:
E soddisfatto. Grazie
LibreOffice 7.1.2.2
Windows 10.0
Rispondi