Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh


Tính tuổi dựa trên ngày sinh với sự trợ giúp của phương thức date_format () trong mysql. Đầu tiên, nhận thời gian ngày hiện tại với phương thức trợ giúp của bây giờ () và bạn có thể đặt ngày sinh của mình trong date_format ().

Cú pháp như sau -

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'yourDateofbirth')), '%Y')+0 AS anyVariableName;

Áp dụng cú pháp trên để tính tuổi từ yourdateofbirth. Trong cú pháp trên, hãy thay thế YourDateofbirth bằng ngày sinh của bạn. Truy vấn như sau -

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;

Sau đây là đầu ra -

+------+
| Age  |
+------+
|    8 |
+------+
1 row in set (0.00 sec)

Bây giờ chúng ta hãy xem điều này trong một ví dụ. Đầu tiên, tạo một bảng -

mysql> create table AgeCalculationFromDatetime
   -> (
   -> YourDateofBirth datetime
   -> );
Query OK, 0 rows affected (0.52 sec)

Chèn ngày sinh vào bàn. Truy vấn như sau -

mysql> insert into AgeCalculationFromDatetime values('1995-11-25');
Query OK, 1 row affected (0.13 sec)

Hiển thị tất cả các bản ghi với sự trợ giúp của câu lệnh Chọn. Truy vấn như sau -

mysql> select *from AgeCalculationFromDatetime;

Sau đây là đầu ra -

+---------------------+
| YourDateofBirth     |
+---------------------+
| 1995-11-25 00:00:00 |
+---------------------+
1 row in set (0.00 sec)

Bây giờ chúng ta hãy xem điều này trong một ví dụ. Đầu tiên, tạo một bảng -

mysql> SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),YourDateofBirth)), '%Y')+0 AS Age from AgeCalculationFromDatetime;

Chèn ngày sinh vào bàn. Truy vấn như sau -

+------+
| Age  |
+------+
| 23   |
+------+
1 row in set (0.00 sec)`

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

Hiển thị tất cả các bản ghi với sự trợ giúp của câu lệnh Chọn. Truy vấn như sau -

  • Truy vấn tính toán tuổi như sau -
  • Đây là đầu ra -
  • Cập nhật vào ngày 30 tháng 3 năm 2019 22:30:24
  • Câu hỏi và câu trả lời liên quan
  • Tính tuổi từ ngày sinh trong MySQL?
  • Tính tuổi từ ngày sinh trong MySQL?
  • Tìm số đường dẫn cuộc sống dựa trên ngày sinh trong JavaScript
  • Cách chuyển đổi hồ sơ ngày sinh thành tuổi với MongoDB
  • Làm thế nào để tìm thấy tuổi khi ngày sinh được biết đến? Sử dụng Java?
  • Làm thế nào để tính thời gian dựa trên vài giây trong MySQL?
  • Làm thế nào để hiển thị tên ngày trên cơ sở ngày khai sinh trong MySQL?
  • Làm thế nào chúng ta có thể tìm thấy các nhân viên từ bảng MySQL có tuổi lớn hơn 30 tuổi, cung cấp ngày sinh duy nhất trên bàn?
  • C chương trình để tính tuổi
  • Làm thế nào để tính tuổi theo năm kể từ ngày sinh trong MySQL?
  • Truy vấn trả lại dựa trên ngày trong MongoDB?
  • Truy vấn MySQL với hai điều kiện Boolean để trích xuất ngày dựa trên giờ?

Nếu tôi có ngày sinh của một người được lưu trữ trong một bảng dưới dạng dd-mm-yyyy, và tôi trừ nó từ ngày hiện tại, ngày nào được trả về?

Làm thế nào tôi có thể sử dụng định dạng được trả lại này để tính độ tuổi của ai đó?

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

Hỏi ngày 24 tháng 4 năm 2011 lúc 21:40Apr 24, 2011 at 21:40

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

user559142user559142user559142

11.9K48 Huy hiệu vàng115 Huy hiệu bạc179 Huy hiệu đồng48 gold badges115 silver badges179 bronze badges

3

Nếu giá trị được lưu trữ dưới dạng loại dữ liệu DateTime:

SELECT YEAR(CURRENT_TIMESTAMP) - YEAR(dob) - (RIGHT(CURRENT_TIMESTAMP, 5) < RIGHT(dob, 5)) as age 
  FROM YOUR_TABLE

Ít chính xác hơn khi bạn xem xét những năm bước nhảy:

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
0

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

Đã trả lời ngày 24 tháng 4 năm 2011 lúc 22:24Apr 24, 2011 at 22:24

OMG Poniesomg PoniesOMG Ponies

319K79 Huy hiệu vàng512 Huy hiệu bạc496 Huy hiệu Đồng79 gold badges512 silver badges496 bronze badges

9

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
1

Kiểm tra hình ảnh demo bên dưới

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

Đơn giản nhưng thanh lịch ..

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

MAZ

76010 Huy hiệu bạc18 Huy hiệu đồng10 silver badges18 bronze badges

Đã trả lời ngày 22 tháng 6 năm 2016 lúc 3:31Jun 22, 2016 at 3:31

Use:

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
2

Theo cách này, bạn xem xét thậm chí tháng và ngày sinh để có tính độ tuổi chính xác hơn.

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

Đã trả lời ngày 24 tháng 4 năm 2011 lúc 22:16Apr 24, 2011 at 22:16

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

Nicola Cossunicola CossuNicola Cossu

53.2K15 Huy hiệu vàng91 Huy hiệu bạc97 Huy hiệu đồng15 gold badges91 silver badges97 bronze badges

4

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
3

Đã trả lời ngày 24 tháng 4 năm 2011 lúc 22:11Apr 24, 2011 at 22:11

lobster1234lobster1234lobster1234

7.64925 Huy hiệu bạc29 Huy hiệu đồng25 silver badges29 bronze badges

2

Simply:

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
4

Đã trả lời ngày 15 tháng 2 năm 2013 lúc 9:56Feb 15, 2013 at 9:56

DamonSsondamonssonDamonsson

1.53214 Huy hiệu bạc25 Huy hiệu đồng14 silver badges25 bronze badges

1

Vì câu hỏi đang được gắn thẻ cho

+------+
| Age  |
+------+
|    8 |
+------+
1 row in set (0.00 sec)
7, tôi có triển khai sau đây phù hợp với tôi và tôi hy vọng các lựa chọn thay thế tương tự sẽ có mặt cho các RDBM khác. Đây là SQL:

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
5

Đã trả lời ngày 20 tháng 3 năm 2013 lúc 8:18Mar 20, 2013 at 8:18

Mickeymoonmickeymoonmickeymoon

4.6805 Huy hiệu vàng30 Huy hiệu bạc53 Huy hiệu Đồng5 gold badges30 silver badges53 bronze badges

Thử cái này:

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
6

Nó trở lại trong năm nay - năm sinh (người sẽ bao nhiêu tuổi trong năm nay sau sinh nhật) và điều chỉnh dựa trên việc người đó có sinh nhật trong năm nay hay không.

Nó không bị lỗi làm tròn của các phương pháp khác được trình bày ở đây.

Thích nghi tự do từ đây

Đã trả lời ngày 24 tháng 4 năm 2011 lúc 22:50Apr 24, 2011 at 22:50

SklivvzsklivvzSklivvz

30.1K24 Huy hiệu vàng118 Huy hiệu bạc169 Huy hiệu đồng24 gold badges118 silver badges169 bronze badges

Đơn giản chỉ cần làm

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
7

ngày sinh là tên trường giữ tên ngày sinh, hãy từ chối () từ năm () chỉ huy trừ năm () từ trường ngày sinh

Đã trả lời ngày 14 tháng 7 năm 2017 lúc 15:09Jul 14, 2017 at 15:09

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

1

Đây là cách tính độ tuổi trong MySQL:

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
8

Đã trả lời ngày 10 tháng 2 năm 2012 lúc 8:13Feb 10, 2012 at 8:13

Mosty Mostachomosty MostachoMosty Mostacho

41.9K15 Huy hiệu vàng95 Huy hiệu bạc123 Huy hiệu Đồng15 gold badges95 silver badges123 bronze badges

0

Bạn có thể tạo một chức năng để làm điều đó:

SELECT DATE_FORMAT(FROM_DAYS(DATEDIFF(now(),'2010-11-25')), '%Y')+0 AS Age;
9

Bây giờ, bạn có thể nhận được tuổi từ một ngày:

+------+
| Age  |
+------+
|    8 |
+------+
1 row in set (0.00 sec)
0

Nếu bạn hẹn hò ở định dạng y-m-d h: i: s, bạn có thể làm điều này:

+------+
| Age  |
+------+
|    8 |
+------+
1 row in set (0.00 sec)
1

Bạn có thể sử dụng lại chức năng này ở bất cứ đâu;)

Đã trả lời ngày 26 tháng 9 năm 2012 lúc 15:09Sep 26, 2012 at 15:09

IdealMindidealMindIdealmind

1.24815 huy hiệu bạc8 Huy hiệu đồng15 silver badges8 bronze badges

1

Tôi thích sử dụng một chức năng theo cách này.

+------+
| Age  |
+------+
|    8 |
+------+
1 row in set (0.00 sec)
2

Bây giờ để sử dụng

+------+
| Age  |
+------+
|    8 |
+------+
1 row in set (0.00 sec)
3

HOẶC

+------+
| Age  |
+------+
|    8 |
+------+
1 row in set (0.00 sec)
4

Đã trả lời ngày 15 tháng 2 năm 2013 lúc 0:23Feb 15, 2013 at 0:23

Có hai cách đơn giản để làm điều đó:

  1. +------+
    | Age  |
    +------+
    |    8 |
    +------+
    1 row in set (0.00 sec)
    5
  2. +------+
    | Age  |
    +------+
    |    8 |
    +------+
    1 row in set (0.00 sec)
    6

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

Đã trả lời ngày 23 tháng 8 năm 2017 lúc 9:18Aug 23, 2017 at 9:18

Hướng dẫn mysql calculate age from date of birth - mysql tính tuổi từ ngày sinh

1