我有我的商店数据库,我想将两个表连接在一起。

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列将它们加入。更具体地说,我想将customers的所有列添加到基于ordersid_customer表中。加入表后应如下所示:

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/

10-12 13:25