Как использовать оператор Update Select, основанный на большем количестве таблиц в SQL Server? - PullRequest
0 голосов
/ 03 июня 2011

У меня есть три таблицы, такие как TableA, TableB и TableC.Я хочу обновить один столбец в TableA из значения столбца в TableC.Но нет прямой связи ч / б TableA и TableC.Но таблица B связана с обеими таблицами A и C. Как я могу обновить?Структура таблиц приведена ниже:

  TableA:                  TableB:               TableC:
 ----------               -----------           ----------
  ItemID                   ID                     ID
  Name                     ItemDetailID           D1
  Quantity                 TotalQty               D2
  Rate                     TotalAmount            D3 
  ItemDetailID             TotalWeight            Quantity

Здесь я хочу обновить столбец TableA «Количество» со значением столбца TableC «Количество».Я использовал Update select Statement, используя две таблицы.Но не так.Как сделать?Пожалуйста, дайте предложения ...

Ответы [ 2 ]

3 голосов
/ 03 июня 2011

Что-то вроде:

Update a
set a.Quantity = c.Quantity
from TableA a
join TableB b on b.ItemDetailId = a.ItemDetailId
join TableC c on c.ID = b.ID
2 голосов
/ 03 июня 2011
Update a
Set a.Quantity = c.Quantity
From TableA a
Inner Join TableB b on b.ItemDetailId = a.ItemDetailId
Inner Join TableC c on c.ID = b.ID
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...