2014-01-17 4 views
0

У меня есть две таблицы A & B. Оба они имеют общие столбцы. A имеет большинство из этих столбцов, но B имеет большинство из них заполненными.Заполнение значений одной таблицы путем запроса другой таблицы

Я хочу написать запрос, который будет выбрать столбцы А, которые не являются пустыми & использовать, чтобы получить другую информацию пустых столбцов из таблицы B & обновлять их в А.

Я предполагаю, что я буду вам нужно выбрать для обновления здесь, но не уверен. нужна помощь.

Таблица A
Название Адрес PhoneNumber
Ник 2nd St NY нулевой
Dan нулевой 123-456-7890

Таблица B
Название Адрес PhoneNumber Пол
Ник 2nd St NY 987-654-3210 M
Dan 5th St NY 123-456-7890 M

Результатом должно быть то, что таблица A заполняет пустые столбцы по запросу в г таблицы B. В колонке SEX не существует в A. A необходим только адрес номер телефона & так это то, что пусто в А.

Результат
Таблица A
Название Адрес PhoneNumber
Ник 2nd St NY 987-654-3210
Dan 5th St NY 123-456-7890

+0

Может быть полезно, если вы разместили упрощенный набор исходных данных и образец желаемого набора данных, чтобы лучше уточнить ваш вопрос. – Dan

+0

Возможно, вы захотите посмотреть [COALESCE()] (http://dev.mysql.com /doc/refman/5.0/en/comparison-operators.html#function_coalesce). Он выберет первое ненулевое значение, которое он найдет. –

ответ

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 = ''; 

Но я хотел бы предложить, что вы ВГА e Посмотрите на учебное пособие, если не в руководстве и не просто скопируйте & вставьте что-нибудь в сообщение какого-нибудь парня в Интернете. Вы не учитесь, не пытаясь понять, что происходит.

Смежные вопросы