Thông thường, tính toán DOB khá dễ dàng trong mysql khi bạn muốn tính toán các năm mà không có bất kỳ phân số nào như
mysql> select timestampdiff(YEAR,'1981-06-01',now());
+----------------------------------------+
| timestampdiff(YEAR,'1981-06-01',now()) |
+----------------------------------------+
| 33 |
+----------------------------------------+
Nhưng vì bạn cũng cần phân số nên điều này sẽ thực hiện thủ thuật
mysql> select format(datediff(curdate(),'1981-06-01') / 365.25,2);
+-----------------------------------------------------+
| format(datediff(curdate(),'1981-06-01') / 365.25,2) |
+-----------------------------------------------------+
| 33.02 |
+-----------------------------------------------------+
Năm được coi là 365,25 ngày.
Vì vậy, trong trường hợp của bạn, bạn có thể có truy vấn là
select
format(datediff(curdate(),dob) / 365.25,2) as dob
from players limit 5;