Ha a LibreOffice Base -ben megadja az emberek születési dátumát, a program kiszámíthatja, hogy hány éves az ember idén. Mutatjuk, hogyan működik.
Születésnapi lista létrehozása a LibreOffice Base -ben
Ha a LibreOffice Base -ben megadja az emberek születési dátumát, a program kiszámíthatja, hogy hány éves az ember idén. Egy egyszerű képlet segítségével vonják le a születési évet az aktuális évből. Ez azonban nem különösebben pontos, mert a szokásos számlálási módszer szerint az ember élete születésnapján megváltozik. Ezt tehát bele kell foglalni a képletbe.
Kezdetben a képlet a következő volt:
DATEDIFF ('yy', "Tagok". "Születési dátum", CURRENT_DATE) KIVÁLASZTÁSA "Kor" -ként "Tagok" -tól
A CURRENT_DATE változó mindig az aktuális dátumot tartalmazza. A DAYOFYEAR funkcióval elkülönítjük a napot a dátumtól, és kihagyjuk az évet. Ezt a jelenlegi dátummal tesszük:
DAYOFYEAR (CURRENT_DATE)
… és a születési dátummal együtt:
DAYOFYEAR ("Tagok". "Születési dátum")
Ezután ellenőrizzük, hogy idén is eljön -e a születésnap:
DAYOFYEAR ("Tagok". "Születési dátum")> DAYOFYEAR (CURRENT_DATE)
Végül a CASEWHEN paranccsal létrejön egy feltétel. Ha a születésnap dátuma még a jövőben van, akkor egy évet vonunk le a számított életkorból:
- CASEWHEN (DAYOFYEAR ("Tagok". "Születési dátum")> DAYOFYEAR (CURRENT_DATE), 1, 0)
A mínusz a legelején a számtani szimbólum, és az 1 majdnem a végén levonásra kerül, ha minden közte érvényes. A kész képlet végül így néz ki:
DATEDIFF ('yy', "Tagok". "Születési dátum", CURRENT_DATE) - CASEWHEN (DAYOFYEAR ("Tagok". "Születési dátum")> DAYOFYEAR (CURRENT_DATE), 1, 0) AS "Age" FROM "kiválasztása Tagok "