MySQLのVARCHARタイプの列から特定の日付の後の日付レコードを検索する
まず、テーブルを作成しましょう。ここでは、日付をVARCHAR-
として設定しています。mysql> create table DemoTable1364 -> ( -> ShippingDate varchar(100) -> ); Query OK, 0 rows affected (0.87 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1364 values('01-09-2019 12:34:55'); Query OK, 1 row affected (0.17 sec) mysql> insert into DemoTable1364 values('01-07-2018 17:10:00'); Query OK, 1 row affected (0.37 sec) mysql> insert into DemoTable1364 values('24-09-2019 10:31:22'); Query OK, 1 row affected (0.24 sec) mysql> insert into DemoTable1364 values('20-09-2018 13:00:00'); Query OK, 1 row affected (0.13 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1364;
これにより、次の出力が生成されます-
+---------------------+ | ShippingDate | +---------------------+ | 01-09-2019 12:34:55 | | 01-07-2018 17:10:00 | | 24-09-2019 10:31:22 | | 20-09-2018 13:00:00 | +---------------------+ 4 rows in set (0.00 sec)
これは、VARCHARタイプの列から特定の日付の後の日付レコードを検索するためのクエリです-
mysql> select * from DemoTable1364 -> where str_to_date(ShippingDate,'%d-%m-%Y %H:%i:%s') > str_to_date('2019-09-21 10:31:20', '%Y-%m-%d %H:%i:%s');
これにより、次の出力が生成されます-
+---------------------+ | ShippingDate | +---------------------+ | 24-09-2019 10:31:22 | +---------------------+ 1 row in set (0.00 sec)
-
MySQLでカンマ区切りの値を持つ列から特定のレコードを検索する
これには、FIND_IN_SET()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> ListOfValue varchar(20) -> ); Query OK, 0 rows affected (0.52 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('78,89,65'); Query O
-
MySQLのVARCHAR列から最大値を見つける
最大値を見つけるには、値がVARCHARタイプであるため、CAST()とともにMAX()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2030 -> ( -> Value varchar(20) -> ); Query OK, 0 rows affected (0.44 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2030 values(&