LibreOffice Base: Ezzel a képlettel sikeresen adhat meg születésnapokat a 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. 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 "

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave