LibreOffice Base: Với công thức này, bạn có thể nhập sinh nhật thành công vào Base

Mục lục:

Anonim

Nếu bạn nhập ngày sinh của mọi người vào LibreOffice Base, chương trình có thể tính cho bạn năm nay một người bao nhiêu tuổi. Chúng tôi sẽ cho bạn thấy nó hoạt động như thế nào.

Cách tạo danh sách sinh nhật trong LibreOffice Base

Nếu bạn nhập ngày sinh của mọi người vào LibreOffice Base, chương trình có thể tính cho bạn năm nay một người bao nhiêu tuổi. Một công thức đơn giản được sử dụng để trừ năm sinh cho năm hiện tại. Tuy nhiên, điều này không đặc biệt chính xác, bởi vì theo phương pháp đếm thông thường, năm của cuộc đời một người thay đổi vào ngày sinh của họ. Do đó, điều này phải được bao gồm trong công thức.

Lúc đầu công thức như sau:

CHỌN DATEDIFF ('yy', "Thành viên". "Ngày sinh", CURRENT_DATE) LÀM "Tuổi" TỪ "Thành viên"

Biến CURRENT_DATE luôn chứa ngày hiện tại. Với chức năng DAYOFYEAR, chúng tôi tách ngày khỏi ngày và bỏ qua năm. Chúng tôi làm điều này với ngày hiện tại:

DAYOFYEAR (CURRENT_DATE)

… và cả ngày sinh:

DAYOFYEAR ("Thành viên". "Ngày sinh")

Sau đó, chúng tôi kiểm tra xem sinh nhật có còn đến trong năm nay hay không:

DAYOFYEAR ("Thành viên". "Ngày sinh")> DAYOFYEAR (CURRENT_DATE)

Cuối cùng, một điều kiện được tạo bằng lệnh CASEWHEN. Nếu ngày sinh vẫn còn trong tương lai, chúng tôi trừ một năm cho tuổi được tính:

- CASEWHEN (DAYOFYEAR ("Thành viên". "Ngày sinh")> DAYOFYEAR (CURRENT_DATE), 1, 0)

Điểm trừ ở phía trước là ký hiệu số học và số 1 gần như ở cuối sẽ bị trừ nếu mọi thứ ở giữa đều áp dụng. Công thức đã hoàn thành cuối cùng trông như thế này:

CHỌN DATEDIFF ('yy', "Thành viên". "Ngày sinh", CURRENT_DATE) - CASEWHEN (DAYOFYEAR ("Thành viên". "Ngày sinh")> DAYOFYEAR (CURRENT_DATE), 1, 0) AS "Tuổi" TỪ " Các thành viên"