我有我的商店数据库,我想将两个表连接在一起。
id_order | reference | id_shop_group | id_shop | id_carrier | id_lang | id_customer | id_cart
这是我的 orders
表的标题行,下面是 customers
表的标题。
id_customer | id_shop_group | id_shop | id_gender | firstname | lastname
我想做的是根据id_customer
列加入他们。更具体地说,我想根据id_customer
将customers
的所有列添加到orders
表中,除了那些已经存在的列。连接后,表应如下所示:
id_order|reference|id_shop_group|id_shop|id_carrier|id_lang|id_customer|id_cart|id_gender|firstname|lastname
在搜索解决方案时,我找到了 INNER JOIN
关键字,但我不确定如何按照我想要的方式使用它。
最佳答案
我们不“向表中添加列”。相反,我们将 SQL 提交到返回我们想要的结果集的数据库。在您的情况下,我们想要连接两个表,我们可以在两个表之间通用的 id_customer
字段上使用 INNER JOIN 来实现这一点。如果您想永久保存这些结果,我们可以将其转换为自己的表格。它看起来像
SELECT
orders.id_order,
orders.reference,
orders.id_shop_group,
orders.id_shop,
orders.id_carrier,
orders.id_lang,
orders.id_customer,
orders.id_cart,
customer.id_gender,
customer.firstname,
customer.lastname
FROM orders INNER JOIN customer on orders.id_customer = customer.id_customer;
您可以调整这些表的连接返回的字段列表以满足您的需要。
关于mysql - 如何根据一列向另一个表添加列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41678657/