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

最初のテーブルから最大ID値を取得し、MySQL INSERT INTO select?を使用して別のテーブルのすべてのIDに挿入します。


まずテーブルを作成しましょう-

mysql> create table DemoTable1
(
   Id int,
   Name varchar(100)
);
Query OK, 0 rows affected (0.86 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable1 values(1001,'Chris');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable1 values(999,'Robert');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable1 values(1003,'Mike');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable1 values(1002,'Sam');
Query OK, 1 row affected (0.13 sec)

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

mysql> select *from DemoTable1;

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

+------+--------+
| Id   | Name   |
+------+--------+
| 1001 | Chris  |
| 999  | Robert |
| 1003 | Mike   |
| 1002 | Sam    |
+------+--------+
4 rows in set (0.00 sec)

以下は、2番目のテーブルを作成するためのクエリです-

mysql> create table DemoTable2
(
   StudentId int,
   StudentFirstName varchar(100)
);
Query OK, 0 rows affected (1.15 sec)

挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。ここでは、最初のテーブルの最大ID値を2番目のテーブルのStudentID列に挿入しました-

mysql> insert into DemoTable2(StudentId,StudentFirstName)
   select
   (select Max(Id) from DemoTable1),
   Name from DemoTable1;
Query OK, 4 rows affected (0.20 sec)
Records: 4 Duplicates: 0 Warnings: 0
>

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

mysql> select *from DemoTable1;

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

+-----------+------------------+
| StudentId | StudentFirstName |
+-----------+------------------+
|      1003 | Chris            |
|      1003 | Robert           |
|      1003 | Mike             |
|      1003 | Sam              |
+-----------+------------------+
4 rows in set (0.00 sec)

  1. 列値の最初の文字を取得し、MySQLを使用して別の列に挿入します

    これには、LEFT()関数の概念を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2036    -> (    -> FirstLetter varchar(20),    -> Title varchar(20)    -> ); Query OK, 0 rows affected (1.01 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTa

  2. MySQL列から最大値を取得しますか?

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Value int    -> ); Query OK, 0 rows affected (0.63 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(78); Query OK, 1 row affected (0.18 sec) mysql> insert into Demo