MySQL SELECT * query uisng FORMATDATE()メソッドで日付をフォーマットしますか?
MySQLのFORMATDATE()ではなくDATE_FORMAT()を使用して、日付をフォーマットします。正しい構文は次のとおりです-
SE LECT *, DATE_FORMAT(yourDateCoumnName,’yourFormat’) as anyAliasName FROM yourTableName
上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-
mysql> create table DateFormatDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserName varchar(10), -> UserLoginDate date -> ); Query OK, 0 rows affected (0.94 sec)>
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです-
mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Mike',curdate()); Query OK, 1 row affected (0.21 sec) mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Sam','2018-05-09'); Query OK, 1 row affected (0.17 sec) mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Carol','2016-01-15'); Query OK, 1 row affected (0.17 sec) mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('Bob','2015-12-31'); Query OK, 1 row affected (0.17 sec) mysql> insert into DateFormatDemo(UserName,UserLoginDate) values('David','2012-08-19'); Query OK, 1 row affected (0.09 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-
mysql> select *from DateFormatDemo;
以下は出力です-
+----+----------+---------------+ | Id | UserName | UserLoginDate | +----+----------+---------------+ | 1 | Mike | 2019-02-06 | | 2 | Sam | 2018-05-09 | | 3 | Carol | 2016-01-15 | | 4 | Bob | 2015-12-31 | | 5 | David | 2012-08-19 | +----+----------+---------------+ 5 rows in set (0.00 sec)>
SELECT *でDATE_FORMAT()を使用して日付をフォーマットしましょう。クエリは次のとおりです-
mysql> select *,DATE_FORMAT(UserLoginDate,'%d-%m-%Y') as NewFormatOfDate from DateFormatDemo;
以下は出力です-
+----+----------+---------------+-----------------+ | Id | UserName | UserLoginDate | NewFormatOfDate | +----+----------+---------------+-----------------+ | 1 | Mike | 2019-02-06 | 06-02-2019 | | 2 | Sam | 2018-05-09 | 09-05-2018 | | 3 | Carol | 2016-01-15 | 15-01-2016 | | 4 | Bob | 2015-12-31 | 31-12-2015 | | 5 | David | 2012-08-19 | 19-08-2012 | +----+----------+---------------+-----------------+ 5 rows in set (0.00 sec)
-
日付がVARCHAR形式の場合、MySQLから特定のレコードを選択するにはどうすればよいですか?
これには、STR_TO_DATE()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable ( DueDate varchar(60) ) ; Query OK, 0 rows affected (0.71 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('12-AUG-2016'); Query OK, 1 row affected (0.11 sec) mysql> insert
-
MySQLから日付を選択し、テキストにフォーマットしますか?
日付と形式を選択するには、SELECT DATE_FORMAT()を使用します。以下は構文です- 構文 select date_format(yourColumnName, '%e %b %y') from yourTableName; まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> DueDate date -> ); Query OK, 0 rows affected (0.52 sec) 挿入コマンド-を使用