範囲内のMySQLテーブルに値を自動挿入しますか?
このために、ストアドプロシージャを作成できます。まずテーブルを作成しましょう。
mysql> create table DemoTable -> ( -> Value int -> ); Query OK, 0 rows affected (0.55 sec)
以下は、10から20の範囲のテーブルに値を自動挿入するストアドプロシージャを作成するためのクエリです-
mysql> DELIMITER // mysql> CREATE PROCEDURE AutoInsertValuesToTable() -> BEGIN -> DECLARE startingRange INT DEFAULT 10; -> WHILE startingRange <= 20 DO -> INSERT DemoTable(Value) VALUES (startingRange ); -> SET startingRange = startingRange + 1; -> END WHILE; -> END -> // Query OK, 0 rows affected (0.23 sec) mysql> DELIMITER ;
これがストアドプロシージャを呼び出すためのクエリです-
mysql> call AutoInsertValuesToTable(); Query OK, 1 row affected (1.10 sec)
これで、値が上記のテーブルに挿入されているかどうかを確認できます-
mysql> select *from DemoTable;
これにより、次の出力が生成されます-
+-------+ | Value | +-------+ | 10 | | 11 | | 12 | | 13 | | 14 | | 15 | | 16 | | 17 | | 18 | | 19 | | 20 | +-------+ 11 rows in set (0.00 sec)
上記の表に10から20の範囲で正常に挿入された値。
-
MySQLのテーブルAと比較しているときに、データがテーブルBにない場合は、データをテーブルCに挿入しますか?
これには、テーブルAとBで左結合を使用します。最初のテーブルを作成しましょう- mysql> create table demo20 −> ( −> id int, −> name varchar(20) −> ); Query OK, 0 rows affected (1.87 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 mysql> insert into demo20 values(100,'John'); Query OK, 1 row affect
-
別のテーブルの値を使用したINSERTINTOのMySQLクエリ?
これには、INSERTINTOSELECTステートメントを使用します。 テーブルを作成しましょう- 例 mysql> create table demo82 -> ( -> id int, -> name varchar(20) -> ); Query OK, 0 rows affected (2.06 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 例 mysql> insert into demo82 values(100,&