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

MySQL SELECTで日付形式を変更する最良の方法は?


MySQLSELECTで日付形式を変更する最良の方法は次のとおりです

SELECT DATE_FORMAT(yourColumnName, "%d/%m/%Y %H:%i") AS anyAliasName FROM yourTableName WHERE yourCondition;

上記の概念を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです

mysql> create table bestDateFormatDemo
   - > (
   - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   - > ArrivalDateTime datetime
   - > );
Query OK, 0 rows affected (0.64 sec)

挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。

クエリは次のとおりです

mysql> insert into bestDateFormatDemo(ArrivalDateTime) values(now());
Query OK, 1 row affected (0.11 sec)
mysql> insert into bestDateFormatDemo(ArrivalDateTime) values(date_add(now(),interval -2
year));
Query OK, 1 row affected (0.33 sec)
mysql> insert into bestDateFormatDemo(ArrivalDateTime) values('2014-01-31 13:45:56');
Query OK, 1 row affected (0.15 sec)
mysql> insert into bestDateFormatDemo(ArrivalDateTime) values('2016-02-11 12:40:30');
Query OK, 1 row affected (0.17 sec)
mysql> insert into bestDateFormatDemo(ArrivalDateTime) values('2018-12-31 12:59:59');
Query OK, 1 row affected (0.19 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示します。

クエリは次のとおりです

mysql> select *from bestDateFormatDemo;

以下は出力です

+----+---------------------+
| Id | ArrivalDateTime     |
+----+---------------------+
|  1 | 2019-02-22 22:50:10 |
|  2 | 2017-02-22 22:50:28 |
|  3 | 2014-01-31 13:45:56 |
|  4 | 2016-02-11 12:40:30 |
|  5 | 2018-12-31 12:59:59 |
+----+---------------------+
5 rows in set (0.00 sec)
>

これは、MySQLselectステートメントの日付形式を変更するためのクエリです

mysql> SELECT DATE_FORMAT(ArrivalDateTime, "%d/%m/%Y %H:%i")AS
changeDateFormat FROM bestDateFormatDemo WHERE Id IN(1,2,3,4,5);

以下は出力です

+------------------+
| changeDateFormat |
+------------------+
| 22/02/2019 22:50 |
| 22/02/2017 22:50 |
| 31/01/2014 13:45 |
| 11/02/2016 12:40 |
| 31/12/2018 12:59 |
+------------------+
5 rows in set (0.28 sec)

時刻を12時間形式にする場合は、「H」の代わりに「h」を使用します。

クエリは次のとおりです

mysql> SELECT DATE_FORMAT(ArrivalDateTime, "%d/%m/%Y %h:%i")AS
changeDateFormat FROM bestDateFormatDemo WHERE Id IN(1,2,3,4,5);

以下は出力です

+------------------+
| changeDateFormat |
+------------------+
| 22/02/2019 10:50 |
| 22/02/2017 10:50 |
| 31/01/2014 01:45 |
| 11/02/2016 12:40 |
| 31/12/2018 12:59 |
+------------------+
5 rows in set (0.00 sec)

  1. MySQLで昨日の日付を選択するにはどうすればよいですか?

    昨日の日付を選択するには、MySQLのsubdate()関数を使用します。構文は次のとおりです select subdate(yourDatetimeColumnName) as anyVariableName from yourTableName; 上記の構文を理解するために、テーブルを作成しましょう mysql> create table YesterdayDateDemo -> ( -> VisitedDateTime datetime -> ); Query OK, 0 rows affected (0.59 sec) ここで、insertコマンドを使用して

  2. PHP MySQLで日付形式(DBまたは出力)をdd / mm / yyyyに変更しますか?

    PHPの日付形式は、date()機能を使用して変更できます。構文は次のとおりです- date(d/m/Y,yourDateTimeVariable); PHPでは、strtodate()を使用して文字列を日付に変換します。日時のフォーマットに使用されるPHPコードは次のとおりです- $LogintDate = strtotime('2019-01-12'); echo date('d/m/Y', $LogintDate); コードのスナップショットは次のとおりです- 以下は出力です- 12/01/2019 あなたはdate_format()関数の助け