SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 07.02.2008 17:58:52

Nikolay
Участник
Зарегистрирован: 05.02.2008
Сообщений: 20

Использование данных из разных таблиц

Есть две таблицы tab1 и tab2 в одной базе данных.
В первой таблице два столбца tab1.col1 и tab1.col2 (здесь хранятся коды отделов - числа от 1 до 142).
Во второй таблице два столбца tab2.zcol1 и tab2.zcol2 (здесь идентично tab1.col2  хранятся коды отделов - числа от 1 до 142).

Как организовать запрос так, чтобы заменить значения столбца  tab1.col1 значениями из столбца tab2.zcol1, со следующим условием. Берется значение из столбца tab1.col2 соответствующее столбцу tab1.col1 (хрянятся в одной строке). Из второй таблицы находится значение в столбце tab2.zcol2 равное значению tab1.col2 из первой таблицы. А ему соответствует какое-то значение в столбце tab2.zcol1 из той же второй таблицы. Это значение и присваевается ячейке в столбце tab1.col1 первой таблицы.

И в результате все значения столбца tab1.col1 будут заменены значениями из столбца  tab2.zcol1.

Надеюсь не сильно запутанный вопрос.

Я пытался решить это запросом:

UPDATE `tab1`
SET `tab1`.`col1 ` = `tab2`.`zcol1`
WHERE `tab2`.`zcol2`=`tab1`.`col2`

Буду благодарен за помощь.

Неактивен

 

#2 07.02.2008 19:32:42

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Использование данных из разных таблиц

См. комментарии к:
http://dev.mysql.com/doc/refman/5.0/en/update.html

Код:

UPDATE `tab1`, `tab2`
SET `tab1`.`col1 ` = `tab2`.`zcol1`
WHERE `tab2`.`zcol2`=`tab1`.`col2`

Неактивен

 

#3 08.02.2008 11:48:55

Nikolay
Участник
Зарегистрирован: 05.02.2008
Сообщений: 20

Re: Использование данных из разных таблиц

Спасибо! Получилось.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson