Вниз
Скачать: CL | DM;

Уважаемые мастера, подскажите как правильно выполнить запрос   Найти похожие ветки 

← →
svt   (2006-10-19 09:22) [0]

Уважаемые мастера, подскажите как правильно выполнить запрос.
Есть две таблицы
table1
id_1  ||  cod   ||

table2
id_2 ||  id_1  || cod  ||
в таблице 1 значение cod не повторяется (varchar) в таблице 2 есть поле id_1 которое эдентично как и в таблице 1. cod в таблице 2 может повторяться. Необходимо заполнить поле id_1 в таблице 2,  что бы было соответствие по полю cod.

Очн благодрен за оказанную помощь


← →
Johnmen ©   (2006-10-19 09:30) [1]

INSERT INTO table2 (id_1,cod) SELECT id_1,cod FROM table1


← →
Sergey13 ©   (2006-10-19 09:32) [2]

update Table2 t2
set id_1=(select id_1 from table1 t1 where t1.cod=t2.cod)


А зачем оба поля из первой во второй таблице? Одного не достаточно?


← →
svt   (2006-10-19 09:48) [3]


> А зачем оба поля из первой во второй таблице? Одного не
> достаточно?

Дело в том, что в первой таблице код не повторяется (cod) т.е. уникален (он varchar) изначально поля id_1  не было. В таблице 2 есть повторения поля cod. Я хотел сделять связку один к одному, но выдает ошибку. не хочет связываться. База досталась в наследие от excel документа. Надо же организовать целостность данных а так как есть не выходит. если есть предложения или советы выслушаю. Повторяющиеся поля в 2 таблице я удалю после того как обеспечиться связка. вот такая ситуация..


← →
ЮЮ ©   (2006-10-19 10:55) [4]


> в таблице 1 значение cod не повторяется (varchar) в таблице
> 2 есть поле id_1 которое эдентично как и в таблице 1. cod
> в таблице 2 может повторяться. Необходимо заполнить поле
> id_1 в таблице 2,  что бы было соответствие по полю cod.
>


Столько много слов и так мало мысли :(


> Уважаемые мастера, подскажите как правильно выполнить запрос.
>  


Запрос на что?


> svt   (19.10.06 09:48) [3]

Тут вообще - пестня :)

Может лучше на пальцах?
Нескольк строк того что есть, что не устраивает, и что хотелось бы имет


← →
ANB ©   (2006-10-19 10:59) [5]


> svt   (19.10.06 09:48) [3]

см.
> Sergey13 ©   (19.10.06 09:32) [2]


внесу маленькую правку (на MS SQL будет работать и без нее - особенность сервера)

update Table2 t2
set id_1=(select min(id_1) from table1 t1 where t1.cod=t2.cod)


← →
svt   (2006-10-19 12:57) [6]


> Необходимо заполнить поле
> > id_1 в таблице 2,  что бы было соответствие по полю cod

вот и весь вопрос.


← →
ANB ©   (2006-10-19 13:02) [7]


> svt   (19.10.06 12:57) [6]

Ответы уже давно дадены


← →
svt   (2006-10-19 15:32) [8]


> ANB ©   (19.10.06 13:02) [7]

актуальность вопроса еще раньше исчерпана....



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
9-1140448162
Fenix
2006-02-20 18:09
2006.12.31
Динамически создаваемые FreeForm.


3-1161001023
Shorokhov
2006-10-16 16:17
2006.12.31
Обращение к пакету PL-SQL от имени другого пользователя


2-1165852725
sportman
2006-12-11 18:58
2006.12.31
Запуск файла


2-1165751400
dasha
2006-12-10 14:50
2006.12.31
как добавить запись в таблицу


2-1165965842
Vladimir1984
2006-12-13 02:24
2006.12.31
Как выставить на поверхности Карты высот числовые зачения 0-255?




   Наверх