Как вставить значение для определенных строк, которые должны быть объединены - PullRequest
0 голосов
/ 08 апреля 2019

Итак, я хочу вставить свой «GarageID» из недавно созданной и заполненной таблицы «Garage» в мою уже существующую таблицу «Auto» (голландское слово для автомобиля) в столбце «GarageID». Все идет нормально. Однако я застрял в том, что я хочу вставить свой «GarageID» для конкретных автомобилей. Так, например, я хочу 'GarageID = 3' для всех автомобилей Renault Clio. Я бы уже застрял в этой точке, если бы типы автомобилей существовали в одной таблице. Но нет, они были разделены, и поэтому модели / типы автомобилей можно найти в другой таблице -> AutoModelID (идентификатор модели автомобиля, но опять же голландские слова для них).

Я уже пробовал несколько вещей. Но мой разум как бы закрутился. Я чувствую, что, по крайней мере, я должен использовать операторы WHERE и INNER JOIN. Однако я не знаю, как это сделать. Я выделил значения, но у меня не получается увидеть, как я могу использовать операторы WHERE и INNER JOIN, если я застрял в таблице Garage.

Если мое объяснение не было достаточно ясным (я не буду винить вас), вот модель моей базы данных. database model

1 Ответ

1 голос
/ 08 апреля 2019

Вы можете попробовать UPDATE внутреннее соединение auto и automodel.Вы получили доступ к столбцам из автомодели в предложении WHERE.

Пример установки идентификатора гаража 3 для всех Renault Clios:

UDAPTE a
       SET a.garageid = 3
       FROM auto a
            INNER JOIN automodel am
                       ON am.id = a.automdelid
       WHERE am.merk = 'Renault'
             AND am.model = 'Clio';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...