将值从一个表中的列复制到另一个表中的列,其中另一个值与MySQL匹配

时间:2013-10-12 07:05:41

标签: mysql

我有点试图写一个MySQL查询...我之前写了一个查询但是没有用。我想要做的是我们的MySQL中有2个表。

table name: customers
column name: customers_default_address_id

table name: address_book
column name: address_book_id

我想用customers_default_address_id填充address_book_id,其中customer_id是两个表中的公共值

但有多个address_book_id customer_id相同,因此查询应只分配address_book_id条目中的一个。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

update table1 set customers_default_address_id=(
    select address_book_id from table2 where
        table1.customer_id=table2.customer_id limit 1
)

或者您可以在内部查询中使用max()而不是限制1