MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLの生年月日に基づいて年齢を計算しますか?


MySQLのDATE_FORMAT()メソッドを使用して、生年月日に基づいて年齢を計算します。まず、now()メソッドを使用して現在の日時を取得し、誕生日をDATE_FORMAT()に配置できます。

構文は次のとおりです-

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

上記の構文を適用して、yourDateofbirthから年齢を計算します。上記の構文で、yourDateofbirthを生年月日に置き換えます。クエリは次のとおりです-

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

以下は出力です-

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

これを例で見てみましょう。まず、テーブルを作成します-

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

生年月日をテーブルに挿入します。クエリは次のとおりです-

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

selectステートメントを使用してすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from AgeCalculationFromDatetime;

以下は出力です-

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

年齢を計算するためのクエリは次のとおりです-

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

これが出力です-

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

  1. MySQLの生年月日レコードに基づいて曜日名を表示するにはどうすればよいですか?

    DAYNAME()を使用して、生年月日を含むレコードの曜日名を表示します。 まずテーブルを作成しましょう- mysql> create table DemoTable795 ( DateOfBirth date ); Query OK, 0 rows affected (0.61 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable795 values('1996-01-21'); Query OK, 1 row affected (0.14 sec) mysql> i

  2. MySQLで秒に基づいて時間を計算する方法は?

    まずテーブルを作成しましょう- mysql> create table DemoTable (    Logouttime time ); Query OK, 0 rows affected (0.62 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('5:50:00'); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable values('6:10:1