2016-04-12 19 views
1

Veritabanını bir veritabanından diğerine aktarmak için bir Veritabanı Geçişi SQL Komut Dosyası oluşturmaya çalışıyorum, eski veritabanında yeni biri yaklaşık 300'den fazla olan 10-15 tablo var. şimdi büyük bir göç yapmaya çalışıyorum, her şeyin nereye gitmesi gerektiğini biliyorum, sonuçlara göre nasıl aktarılacağını anlayamıyorum. I insert nasıl yapılacağını biliyorum ben bir ekleme yapmak istiyorum bu sonuçlarla ŞimdiSQL Bir Sorgu Yürütün ve sonuçları temel alan başka birini yürütme

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 

ama nasıl birinciden I sonuçları üzerinde döngü yapın:

İşte Ne ive şu anda var sorgu, INSERT AS SELECT kullanmak, ben PHP kullanabilirsiniz ama ben kullanmak hız tam SQL

cevap

1

bir döngü gerek yok için kullanmayı tercih:

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 
+0

Il bu deneyin, bu çok büyük bir sql komut dosyası olacak , o magento için, kendi API'sı çok seri ürün dönüşümleri için çok yavaş olduğu için – Hudson

+0

Bu çalıştı, tekrar çok teşekkürler ... – Hudson