2010-07-08 4 views
0

Что делать, если я хотел обновить записи в таблице, изменив значения в одном из столбцов?изменить таблицу с столбцом с нулевыми значениями

У меня есть записи в таблице, в которых один столбец пуст (нулевые значения). Я хочу изменить эти значения и вставить значения из другой таблицы в эти записи.

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

+0

Есть ли какое-то ключевое отношение, которое связывает 2 таблицы вместе? –

ответ

1

Для существующих записей вам нужно будет использовать UPDATE для обновления этого одного столбца, WHERE thisColumn IS NULL.

Не должны ли значения в этом столбце иметь какое-либо отношение к остальной части записи? Я мог бы понять инициализацию существующих записей в ненулевое значение, или с помощью запроса UPDATE для заполнения данных из другой таблицы в этом столбце, но все они связан с исходной строкой ...

UPDATE old SET old.badColumn = new.newData 
FROM oldTable old 
JOIN newTable new on old.someID = new.someID 

Это найти связанные с данными в newTable, сопоставляя oldTable и обновляем badColumn до некоторых данных из newTable ... дайте мне знать, если вам нужна дополнительная помощь.

+0

Столбец с нулевыми значениями был случайно изменен на null; он связан с другими столбцами в каждой записи, поэтому я пытаюсь вставить исходные данные обратно в этот столбец; но не может понять это правильно. Единственное, что он вставляет в конце таблицы. – vbNewbie

+0

Вам нужно сделать что-то вроде этого ... UPDATE a.badColumn = b.newData from myTable a join otherTable b на a.someid = b.someid Имеет ли это смысл? :) – Fosco

+0

спасибо, позвольте мне попробовать это быстро – vbNewbie

1

См. Раздел «Использование инструкции UPDATE с информацией из другой таблицы» из раздела this page в электронной документации по SQL Server.

+0

попробовал разные комбинации. не получилось правильно – vbNewbie

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