Обработка результатов после SELECT… FROM… INNER JOIN… ON

0

У меня 4 таблицы: tb1, tb2, tb3, tb4.

Я хочу вернуть все столбцы в 4 таблицы:

SELECT tb1.col1a, tb1.col1b, tb2.col2a, tb3.col3a, tb3.col3b, tb4.col4a
FROM tb1, 
INNER JOIN tb2 ON tb1.col1a=tb2.col2a
INNER JOIN tb3 ON tb1.col1a=tb3.col3a
INNER JOIN tb4 ON tb3.col3a=tb4.col4a

Результатом будет новая таблица, назовем ее tbX.

Теперь я хочу обновить столбец col3b tb3 с условием базы на tbX, что мне нужно?

  • 0
    Читайте о update set ... from .. join ...
  • 0
    Кстати, условие не из tbx, а из одной из объединенных таблиц. так что проще присоединиться к tb2 с тем, который содержит данные, которые вы хотите использовать для обновления
Показать ещё 3 комментария
Теги:

1 ответ

0
I think you can update using CTE as below.
WITH TBX
AS
(
SELECT tb1.col1a,tb1.col1b,tb2.col2a,tb3.col3a,tb3.col3b,tb4.col4a
FROM tb1
INNER JOIN tb2 ON tb1.col1a=tb2.col2a
INNER JOIN tb3 ON tb1.col1a=tb3.col3a
INNER JOIN tb4 ON tb3.col3a=tb4.col4a
)
UPDATE XYZ
SET XYZ.COLUMN = WHAT NEED TO BE REPLACED 
FROM XYZ
JOIN TBX
ON XYZ.COLNAME = TBX.COLNAME
  • 0
    спасибо, но это неверно. Я иду этот запрос, и результатом был нераспознанный тип оператора

Ещё вопросы

Сообщество Overcoder
Наверх
Меню