MySQLで時間に関係なく日付でグループ化するにはどうすればよいですか?
テーブルに同じ日付があり、それぞれの時刻の値が異なる場合は、GROUPBYDATEを使用して簡単にグループ化できます。
まずテーブルを作成しましょう-
mysql> create table DemoTable692 (DueDatetime datetime); Query OK, 0 rows affected (0.97 sec)
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します:
mysql> insert into DemoTable692 values('2019-07-21 10:20:00'); Query OK, 1 row affected (0.18 sec) mysql> insert into DemoTable692 values('2019-06-11 11:00:10'); Query OK, 1 row affected (0.24 sec) mysql> insert into DemoTable692 values('2019-07-21 11:00:10'); Query OK, 1 row affected (1.97 sec) mysql> insert into DemoTable692 values('2019-07-21 12:10:10'); Query OK, 1 row affected (0.18 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示します:
mysql> select *from DemoTable692;
これにより、次の出力が生成されます-
+---------------------+ | DueDatetime | +---------------------+ | 2019-07-21 10:20:00 | | 2019-06-11 11:00:10 | | 2019-07-21 11:00:10 | | 2019-07-21 12:10:10 | +---------------------+ 4 rows in set (0.00 sec)
これは、時間に関係なくGROUPBYDATEへのクエリです-
mysql> select *from DemoTable692 GROUP BY DATE(DueDatetime);
これにより、次の出力が生成されます-
+---------------------+ | DueDatetime | +---------------------+ | 2019-07-21 10:20:00 | | 2019-06-11 11:00:10 | +---------------------+ 2 rows in set (0.00 sec)
-
MySQLで文字列を時間に変換する方法は?
フォーマット指定子を使用できます。以下は構文です- select str_to_date(yourColumnName,'%d/%m/%Y %h:%i %p') as anyAliasName from yourTableName; まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> DueDate varchar(100) -> ); Query OK, 0 rows affected (0.51 sec) 挿入コマ
-
MySQLで日付形式を変換する方法は?
日付形式を変換するには、STR_TO_DATE()-を使用します mysql> create table DemoTable2010 ( DueDate varchar(20) ); Query OK, 0 rows affected (0.68 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2010 values('12/10/2019 12:34:00'); Query OK, 1 row affected (0.13 sec) mysql>