MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで90日前から現在までの日付のテーブルから行を選択します


これにはMySQLINTERVALを使用します。まずテーブルを作成しましょう-

mysql> create table DemoTable
(
   DueDate date
);
Query OK, 0 rows affected (1.13 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('2019-07-10');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('2019-09-02');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values('2019-06-01');
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable values('2019-05-10');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('2019-08-21');
Query OK, 1 row affected (0.14 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select *from DemoTable;

これにより、次の出力が生成されます-

+------------+
| DueDate    |
+------------+
| 2019-07-10 |
| 2019-09-02 |
| 2019-06-01 |
| 2019-05-10 |
| 2019-08-21 |
+------------+
5 rows in set (0.00 sec)

以下は、-90日前から現在までの日付のテーブルから行を選択するためのクエリです-

mysql> select *from DemoTable
where DueDate between now() - interval 90 day and now();

これにより、次の出力が生成されます-

+------------+
| DueDate    |
+------------+
| 2019-07-10 |
| 2019-08-21 |
+------------+
2 rows in set (0.00 sec)

  1. データベーステーブルからいくつかのデータを選択し、MySQLと同じデータベース内の別のテーブルに挿入します

    テーブルから別のテーブルにデータを挿入するには、INSERTINTOステートメントを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1      (      Id int,      FirstName varchar(20),      Age int      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいく

  2. MySQLテーブルで先行ゼロの値を選択して挿入します

    このために、LPAD()とともにINSERTINTOSELECTステートメントを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1967    (    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    UserId varchar(20)    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql>