1

あるデータベースから別のデータベースにデータを転送するデータベース移行 SQL スクリプトを作成しようとしています。古いデータベースには約 10 ~ 15 のテーブルがあり、新しいデータベースには 300 を超えるテーブルがあります。今、1 つの大きな移行を実行しようとしています。すべてが必要な場所を知っています。 go 、結果に基づいて転送する方法がわかりません。

現時点で得たものは次のとおりです。

SELECT i.item_name AS `item_name` , i.item_rrp  AS `item_rrp` , i.item_web_price  AS `item_price` , p.product_image AS `product_image` FROM `table1`.`items` JOIN(
 `table1`.`items` i , 
 `table1`.`products` p
) WHERE `item_discontinued` = 0

これから結果を挿入したいのですが、挿入の方法は知っていますが、最初のクエリの結果をループするにはどうすればよいですか。PHPを使用できますが、完全なSQLを使用する方が速度が良いです

4

1 に答える 1

1

ループは必要ありません。次を使用しますINSERT AS SELECT

INSERT INTO <YourTable> (<column names .......>)
SELECT i.item_name AS `item_name` , i.item_rrp  AS `item_rrp` , i.item_web_price  AS `item_price` , p.product_image AS `product_image`
FROM `table1`.`items` JOIN(
`table1`.`items` i , 
`table1`.`products` p
) WHERE `item_discontinued` = 0
于 2016-04-12T12:38:50.517 に答える