2013-05-17 40 views
0

我在同一个数据库中有两个表。我想将一些信息从一个表格传递给另一个表格。从一个表到另一个具有相同ID的INSERT值NUMBERS

在第一张“产品”表中,我有products_id,products_length,products_width和products_height,我想将该表中的所有信息传递给第二个称为“product”的信息。

第二个表“product”具有以下列product_id,lenght,width和height。

在这两个表中,产品都是相同的,并且它们具有相同的ID号。

我只需要帮助如何将“产品”的值插入到“产品”中。

+0

你想单独使用SQL还是使用其他语言(PHP等)? – ajtrichards

+0

单独使用SQL。我只需要将表格产品的长度,宽度和高度传递给表格产品即可。谢谢 – user1757383

+0

请看下面的答案以及其他一些用户 – ajtrichards

回答

0

你只是要求这个吗?

​​

如果你只是试图迁移数据,你能复制表吗?或者重命名它和列?

+0

是的我想将数据从oscommerce迁移到opencart。两个表都已经有了信息。我只是想把这些柱子从一张桌子移到另一张桌子上。 – user1757383

0

尝试:

INSERT INTO product VALUES (product_id, lenght, width, height) 
    SELECT products_id, products_lenght, products_width, products_height 
    FROM products 
    WHERE products_id=3 

您可以删除WHERE条款,如果要插入的产品的所有记录。

1

你应该真的想到改进你的计划。你有很多重复的信息会导致性能和维护地狱。表产品不应该存储给定产品的信息,而应该只在第二个产品表中有一个产品的外键。

+0

你怎么知道他想用他的模式来做什么? – Matthew

+2

'这两个表中的产品都是相同的,并且它们具有相同的ID NUMBER.'即使只有这句话告诉我他的模式有问题 –

0

首先,我建议你改进你的数据库模式 - 你复制一些信息。

但是,为了回答你可以使用:

INSERT INTO product (product_id, length, width, height) 
SELECT products_id ,products_length ,products_width ,products_height FROM products 

另一种办法是复制的表,将其重命名,然后重命名列?

3

试试这个:

CREATE TABLE product LIKE products; 
INSERT INTO product SELECT * FROM products; 
+0

+1,假设他不想复制指定的列。 – Matthew

+0

我不能创建表产品,因为它已经创建,并有更多的柱,如果我创建一个新表,我会删除它里面的所有信息。 – user1757383

相关问题