通过查询另一个表来填充一个表的值

时间:2014-01-17 19:15:01

标签: mysql sql database

我有两张桌子A& B.他们都有共同的专栏。 A大部分列都是空的,但B大部分已满。

我想编写一个查询,它将选择A中不为空的列。用它来获取表B&中的其他空列信息在A中更新它们。

我猜我需要选择更新,但不确定。需要帮助。

表A
姓名地址PhoneNumber
Nick 2nd St NY null 丹null 123-456-7890

表B
姓名地址PhoneNumber Sex
Nick 2nd St NY 987-654-3210 M
Dan 5th St NY 123-456-7890 M

结果应该是表A通过查询表B填充其空列.AX中不存在列SEX。只需要电话号码&地址,因为这是A中的空白。

结果
表A
姓名地址PhoneNumber
Nick 2nd St NY 987-654-3210
Dan 5th St NY 123-456-7890

1 个答案:

答案 0 :(得分:0)

这样的事情:

UPDATE
A INNER JOIN B ON A.column = B.column /*the columns that connect the tables*/
SET A.almost_empty_column = B.full_column
WHERE A.almost_empty_column IS NULL OR A.almost_empty_column = '';

但是我建议,至少如果不是手册,你看看教程,不要只是复制和粘贴互联网上的某些帖子。你不学习不试图了解正在发生的事情。