MySQLのWHEREで日付を減算して行を選択しますか?
これには、TIMESTAMPDIFF()を使用します。テーブルを作成しましょう-
mysql> create table demo42 −> ( −> start_date datetime −> ); Query OK, 0 rows affected (0.77 sec)
挿入コマンド-
を使用して、いくつかのレコードをテーブルに挿入します。mysql> insert into demo42 values('2020-01-10 12:30:05'); Query OK, 1 row affected (0.11 sec) mysql> insert into demo42 values('2019-02-24 10:40:45'); Query OK, 1 row affected (0.11 sec) mysql> insert into demo42 values('2020-05-12 05:45:55'); Query OK, 1 row affected (0.17 sec) mysql> insert into demo42 values('2020-05-12 05:40:55'); Query OK, 1 row affected (0.15 sec) mysql> insert into demo42 values('2020-05-12 05:42:55'); Query OK, 1 row affected (0.11 sec)
selectステートメントを使用してテーブルのレコードを表示する-
mysql> select *from demo42;
これにより、次の出力が生成されます-
+---------------------+ | start_date | +---------------------+ | 2020-01-10 12:30:05 | | 2019-02-24 10:40:45 | | 2020-05-12 05:45:55 | | 2020-05-12 05:40:55 | | 2020-05-12 05:42:55 | +---------------------+ 5 rows in set (0.00 sec)
以下は、TIMESTAMPDIFF-
を使用して行を選択するためのクエリです。mysql> select *from demo42 −> where ABS(TIMESTAMPDIFF(MINUTE,start_date, '2020−05−12 05:40:55')) < 5;
これにより、次の出力が生成されます-
+---------------------+ | start_date | +---------------------+ | 2020−05−12 05:40:55 | | 2020−05−12 05:42:55 | +---------------------+ 2 rows in set (0.00 sec)
-
MySQLでWHEREINnullを選択しますか?
以下は構文です- select yourColumnName1, yourColumnName2, yourColumnName3, . . . N from yourTableName where yourValue in(yourColumnName1,yourColumnName2) or yourColumnName1 is NULL; テーブルを作成しましょう- mysql> create table demo60 −> ( −> id int not null auto_increment primary key, −>
-
MySQLリスト文字列の値を選択しますか?
これには、FIND_IN_SET()を使用します。 テーブルを作成しましょう- 例 mysql> create table demo81 -> ( -> id int not null auto_increment primary key, -> username varchar(200) -> ); Query OK, 0 rows affected (1.44 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 例 mysql>