2013-04-14 6 views
-3

enter image description hereКак сохранить значения таблиц таблицы для других значений таблицы?

У меня есть 2 таблицы Таблица 1 = Profile_Update Таблица 2 = PostalDB

Здесь Таблица 1 колонка (BusinessName, ContactName, город, штат, почтовый индекс {PrimaryKey}, и т.д ..) значения хочет Храните таблицу 2 (Город, штат, почтовый индекс {PrimaryKey}). Как сохранить одно значение столбца таблицы для других значений таблицы.

+3

http://stackoverflow.com/questions/16000854/how-to-create-a-new-table-from-an-existing- таблица - это не тот же вопрос? – Sajeetharan

+2

Имея первичный ключ на почтовый индекс, вероятно, неразумно – Brad

+0

Вопрос до сих пор не ясен. Формулировка звучит так, как будто вторая таблица не существует, но в Object Explorer ясно, что это так. Является ли таблица «PostalDB» пустой (то есть вам нужна вставка), или заполняется ли таблица «PostalDB» (что означает, что вам нужно обновление и, возможно, также вставка)? –

ответ

0

Использование

SELECT ... INTO 

при создании новой таблицы.

В противном случае

Insert INTO table (columns...) (SELECT ... FROM ... where ...) 
1

Игнорирование, что наличие первичного ключа почтового кода не умный (так как в некоторых случаях несколько городов могут совместно использовать почтовый индекс, и, конечно, вы не хотите, чтобы только один пользователь любой почтовый индекс), может быть то, что вы ищете это:

UPDATE p SET city = pu.city, state = pu.state 
    FROM dbo.PostalDB AS p 
    INNER JOIN dbo.Profile_Update AS pu 
    ON p.Postalcode = pu.Postalcode; 

INSERT dbo.PostalDB(city, state, Postalcode) 
    SELECT city, state, postalcode 
    FROM dbo.Profile_Update AS pu 
    WHERE NOT EXISTS 
    (
    SELECT 1 FROM dbo.PostalDB 
     WHERE Postalcode = pu.Postalcode 
); 
+0

Wow Спасибо, человек, которого я получил .. – SDR

+0

Нежный человек жалеет, что данные не будут автоматически сохранены в таблице PostalDb, но таблица profile_update сохраняет данные отлично, если я выполняю запрос, тогда только он будет добавлен в таблицу PostalDb. .my нужно автоматически сохранять данные в PostalDb также на основе записи таблицы Profile_Update в соответствии с вашим предложением. Я удаляю Postalcode в качестве первичного ключа .. В помощь .. – SDR

+0

Извините, я понятия не имею, в чем проблема. Вы хотите сохранить почтовый индекс, город и штат дважды, во второй таблице, автоматически? Зачем? Просто создайте представление, если вам нужно иметь доступ к тем же данным, избыточно, используя два разных имени таблицы. Вы можете делать то, что хотите, с помощью триггера, но я думаю, что это полная трата времени, усилий и хранения. –

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