[Risolto] Calcolo anni di vita
-
- Messaggi: 58
- Iscritto il: mercoledì 12 aprile 2023, 9:00
[Risolto] Calcolo anni di vita
Buona sera, avrei bisogno di sapere, se possibile e per favore, la sintassi per calcolare gli anni di vita di una persona in un database Libre. Faccio presente che qualcosa ho trovato tempo fa, ma ora l'ho anche smarrito, per il calcolo con Calc e calcolava perfetto, al giorno, ma in Base non funzionava, poi trovai qualcosa anche per base ma era molto approssimativo e quindi non affidabile. Mi potete dare una mano per cortesia? Grazie in anticipo.
Saluti
Giuseppe
Saluti
Giuseppe
Ultima modifica di giuseppe57 il mercoledì 31 maggio 2023, 16:14, modificato 1 volta in totale.
LibreOffice 7.5.2 su windows 10
Re: Calcolo anni di vita
Ciao, avevamo già parlato delle funzione DATEDIFF qui: https://forum.openoffice.org/it/forum/v ... t=datediff
Al posto delle prima data devi metterci la funzione NOW() che vuol dire ora, in questa data, in questo momento. Al posto della seconda data devi mettere quella di nascita. Ti lascio invece scoprire cosa scrivere al posto di 'dd' per aver gli anni anzichè i giorni .
Al posto delle prima data devi metterci la funzione NOW() che vuol dire ora, in questa data, in questo momento. Al posto della seconda data devi mettere quella di nascita. Ti lascio invece scoprire cosa scrivere al posto di 'dd' per aver gli anni anzichè i giorni .
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
-
- Messaggi: 58
- Iscritto il: mercoledì 12 aprile 2023, 9:00
Re: Calcolo anni di vita
Infatti, mi ricordavo che c'era qualcosa che non andava, quella formula non rispetta gli anni giusti, te la riporto così mi dici, cortesemente dove è che sbaglio, perchè sicuramente sbaglio, DATEDIFF( 'yy', "natoil", NOW( ) ) questo è quello che scrivo e se nel campo "natoil" metto 28/05/1957 mi da giustamente 66 anni, se metto 27/05/1957 mi da giustamente 66 anni e se metto 29/05/1957 ingiustamente sempre 66 anni mi da, non me ne dovrebbe dare invece 65? Mi indichi, per favore, dove commetto errore di sbaglio ? Grazie.
Giuseppe.
Giuseppe.
LibreOffice 7.5.2 su windows 10
-
- Messaggi: 58
- Iscritto il: mercoledì 12 aprile 2023, 9:00
Re: Calcolo anni di vita
Facendo varie prove ho notato che dall'01/01/57 al 31/12/57 da sempre 66 anni quindi penso faccia il calcolo solo sull'anno e non su tutta la data intera, giorno mese anno. che si fa??? Boohhh. Deduzioni mie, non so se esatte.
LibreOffice 7.5.2 su windows 10
Re: Calcolo anni di vita
Deduzione esatta, bisogna cercare un altro sistema ...
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Calcolo anni di vita
Bisogna cambiare approccio:
Dove CURRENT_DATE equivale a NOW(), fa la stessa cosa;
CASEWHEN confronta i mesi delle date e toglie 1 anno se il mese della data odierna è minore del mese della data di nascita.
EDIT: oppure
Codice: Seleziona tutto
SELECT *, "DataNascita", YEAR( CURRENT_DATE ) - YEAR( "DataNascita" ) - CASEWHEN( RIGHT( CURRENT_DATE, 5 ) < RIGHT( "dataNascita", 5 ), 1, 0 ) AS "Anni" FROM "NomeTabella"
CASEWHEN confronta i mesi delle date e toglie 1 anno se il mese della data odierna è minore del mese della data di nascita.
EDIT: oppure
Codice: Seleziona tutto
SELECT "ID", "Nascita", YEAR( CURRENT_DATE ) - YEAR( "Nascita" ) - CASEWHEN( MONTH( CURRENT_DATE) < MONTH( "Nascita"), 1, 0 ) AS "Anni" FROM "Tabella1"
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
-
- Messaggi: 58
- Iscritto il: mercoledì 12 aprile 2023, 9:00
Re: Calcolo anni di vita
Buon giorno Charlie, grazie per le risposte. Puoi vedere, per favore, se ho scritto bene la sintassi per adattare il codice di sopra al mio database? SELECT *, "natoil", YEAR( CURRENT_DATE ) - YEAR( "natoil" ) - CASEWHEN( RIGHT( CURRENT_DATE, 5 ) < RIGHT( "natoil", 5 ), 1, 0 ) AS "Anni" FROM "TAnag" solo non riesco a capire "Anni" a quale campo si riferisce e come devo modificarlo e infine, sempre per cortesia, mi dici in quale tipo di campo vado a scrivere il codice? Grazie per la pazienza.
Saluti Giuseppe
Saluti Giuseppe
LibreOffice 7.5.2 su windows 10
Re: Calcolo anni di vita
Ciao, sei in una query:
- o la apri con Crea ricerca in vista sql e copi/incolli tutto il codice che hai scritto
- o la apri con Crea ricerca in vista struttura e fai tutto graficamente
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
-
- Messaggi: 58
- Iscritto il: mercoledì 12 aprile 2023, 9:00
Re: Calcolo anni di vita
Perfetto Charlie, manco a dirlo, perfetto , non che avessi dubbi . Ecco vedi, è questo che vorrei imparare a fare io, cioè a scrivere formule nelle query, come nell'esempio che mi hai mandato tu, come posso fare, indirizzami per favore, se c'è un videocorso da seguire su you tube o un manuale da leggere, indirizzato a gente cruda come me però, altrimenti mi perdo fra le varie terminologie tecniche. Quell'altro modo da seguire per arrivare allo stesso risultato, non l'ho capito, non ho capito dove andare a scrivere , con SELECT per intenderci, la riga di comando, in quale posizione , nella struttura del campo, ma non fa niente, mi piacerebbe ma, per ora non fa niente. Aspettando indicazioni su dove andare per acquisire, una basilare infarinatura su come e cosa scrivere nelle query per raggiungere risultati soddisfacenti nei vari calcoli di date, nuemeri, confronti fra campi e altro, ti ringrazio di cuore e amichevolmente ti saluto.
Giuseppe
Giuseppe
LibreOffice 7.5.2 su windows 10
-
- Messaggi: 58
- Iscritto il: mercoledì 12 aprile 2023, 9:00
Re: Calcolo anni di vita
Scusa, stavo pensando, perchè non apri un tuo canale su you tube e metti a disposizione le tue conoscenze con dei videocorsi, penso che saresti molto seguito, o esiste già una cosa del genere ed io non me ne sono mai accorto? Saluti
Giuseppe
Giuseppe
LibreOffice 7.5.2 su windows 10
Re: Calcolo anni di vita
giuseppe57 ha scritto: ↑mercoledì 31 maggio 2023, 8:46 Quell'altro modo da seguire per arrivare allo stesso risultato, non l'ho capito, non ho capito dove andare a scrivere , con SELECT per intenderci, la riga di comando, in quale posizione , nella struttura del campo, ...
Tutto quello che conosco, l'ho imparato su questo forum provando a rispondere alle domande degli altri utenti dopo aver fatto delle prove personali. Poi consultando i forum paralleli in inglese e francese (grazie a google translate!) e i manuali rintracciabili sui siti ufficiali di OpenOfficee libreOffice.giuseppe57 ha scritto: ↑mercoledì 31 maggio 2023, 8:46 indirizzami per favore, se c'è un videocorso da seguire su you tube o un manuale da leggere,
No grazie, ce ne sono già troppi !giuseppe57 ha scritto: ↑mercoledì 31 maggio 2023, 9:10 ... perchè non apri un tuo canale su you tube ...
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
-
- Messaggi: 58
- Iscritto il: mercoledì 12 aprile 2023, 9:00
Re: Calcolo anni di vita
Ok Charlie grazie di tutto per adesso, un arriscriverci e un riconoscente saluto.
Giuseppe
Giuseppe
LibreOffice 7.5.2 su windows 10