別の日付から30日より古い日付を削除するMySQLクエリ?
以下は構文です-
delete from yourTableName where yourColumnName < (yourAnotherDateValue - INTERVAL 30 DAY);を削除します。
まずテーブルを作成しましょう-
mysql> create table DemoTable ( DueDate date ); Query OK, 0 rows affected (0.68 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable values('2019-08-25'); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable values('2019-07-01'); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable values('2019-06-20'); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable values('2019-09-02'); Query OK, 1 row affected (0.14 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable;
これにより、次の出力が生成されます-
+------------+ | DueDate | +------------+ | 2019-08-25 | | 2019-07-01 | | 2019-06-20 | | 2019-09-02 | +------------+ 4 rows in set (0.00 sec)
以下は、別の日付から30日より古い日付を削除するためのクエリです-
mysql> delete from DemoTable where DueDate < ('2019-08-31' - INTERVAL 30 DAY); Query OK, 2 rows affected (0.22 sec)
テーブルレコードをもう一度確認しましょう-
mysql> select *from DemoTable;
これにより、次の出力が生成されます-
+------------+ | DueDate | +------------+ | 2019-08-25 | | 2019-09-02 | +------------+ 2 rows in set (0.00 sec)
-
MySQLでタイムスタンプが5分より古いレコードを削除しますか?
これには、DELETEコマンドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1851 ( DueDate datetime ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1851 values('2019-12-03 21:30:35'
-
単一のクエリでIN()を使用してMySQLテーブルからレコードを削除する
テーブルを作成しましょう- mysql> create table DemoTable1922 ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(20) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1922(StudentNa