異なるMySQLデータベースの列を持つ2つのテーブル間でデータを移動するにはどうすればよいですか?
このためには、INSERTSELECTステートメントを使用する必要があります。構文は次のとおりです
INSERT INTO yourDatabaseName1.yourTableName1(yourColumnName1,yourColumnName2,....N) SELECT yourColumnName1,yourColumnName2,....N FROM yourdatabaseName2.yourTableName2;
ここでは、次の2つのデータベースを使用しています
- サンプル
- テスト
「テスト」データベースに最初のテーブルを作成しましょう
<送信>
mysql> use test; Database changed mysql> create table send -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(20) -> ); Query OK, 0 rows affected (1.19 sec)
挿入コマンドを使用して、最初のテーブルにいくつかのレコードを挿入します。クエリは次のとおりです
mysql> insert into send(Name) values('John'); Query OK, 1 row affected (0.20 sec) mysql> insert into send(Name) values('Carol'); Query OK, 1 row affected (0.40 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する
mysql> select *from send;
以下は出力です
+----+-------+ | Id | Name | +----+-------+ | 1 | John | | 2 | Carol | +----+-------+ 2 rows in set (0.00 sec)
次に、「サンプル」データベースに2番目のテーブルを作成します
<受信>
mysql> use sample; Database changed mysql> create table receive -> ( -> UserId int, -> UserName varchar(20) -> ); Query OK, 0 rows affected (0.59 sec)
上記のように、2番目のテーブル「受信」にはレコードがありません。
次に、異なるデータベースの異なる列を持つ2つのテーブル間でデータを移動してみましょう。クエリは次のとおりです
mysql> insert into sample.receive(UserId,UserName) -> select Id,Name from test.send; Query OK, 2 rows affected (0.21 sec) Records: 2 Duplicates: 0 Warnings: 0
テーブルsample.receiveのすべてのレコードを表示します。クエリは次のとおりです。
mysql> select *from receive;
以下は、異なるデータベースのあるテーブルから別のテーブルに日付を正常に移動したことを示す出力です
+--------+----------+ | UserId | UserName | +--------+----------+ | 1 | John | | 2 | Carol | +--------+----------+ 2 rows in set (0.00 sec)
-
ORDER BY?を使用して、2つの異なるテーブルから2つの異なる列を表示します。
このために、ORDERBY句とともにUNIONを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1 ( Amount int ); Query OK, 0 rows affected (0.63 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1 values(234); Query OK, 1 row affected (0.18 sec) mysql> insert into DemoTable1 val
-
MySQLテーブルからデータを削除した後に1で自動インクリメントするにはどうすればよいですか?
これには、TRUNCATETABLEコマンドを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1796 ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(20) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにい