UPDATE при связи один ко многим

Pustota

Новичок
UPDATE при связи один ко многим

Нужно обновить информацию в одной таблице по данным из другой.
То есть, в первой таблице есть поле 'hotelroomtypes'.
Во второй поле 'id' связано с полем 'hotelroomtypes' первой таблицы.
А также во второй таблице есть ещё поле 'hotel', по которому и нужно обновить данные в первой таблице.
Но (!) при запросе "SELECT id FROM table2 WHERE hotel='34'", выбираются несколько id'ов (это нормально, так как другие поля во второй таблице разные).
Собственно, такой вопрос: Как обновить данные в первой таблице, где hotelroomtypes будет равен всем тем 'id'ам второй таблицы, где hotel='34'?
Делал такой запрос, но MySQL сругнулся на него:
UPDATE table1 t1, table2 t2 SET t1.show='N' WHERE t1.hotelroomtype=t2.id and t2.hotel='14886';
 

zerkms

TDD infected
Команда форума
запрос нормальный, показывай ошибку
 

Pustota

Новичок
А, всё, отработал. Видимо вылетал из-за того что долго думал. База большая порядка 3 000 000 записей. Спасибо. Вроде получилось. просто хотел убедиться, что при такой связке, когда связь один ко многим идёт, MySQL нормально будет отрабатывать.
 

Сергей Тарасов

Профессор
Чувак!
Mysql - достаточно мощное средство и отрабатывать она будет нормально при значительно большем кол-ве записей. Главное, чтобы БД была организована правильно! ;-)
 
Сверху