Обновление одного столбца из столбца другой таблицы

Привет я хочу обновить столбец с колонкой другой таблицы, принимая какое-то решение Вот мой код

update STOCKS 
    set SE_QTY_L2 = (   

      select SE_QTY_L2  

      from STOCKS  
      join 
      VITEM on VITEM.Code= STOCKS.SE_ITEM_CODE 
      and SE_UNIT = VITEM.[First Unit] and VITEM.[Max Level] = 3  


      )   from STOCKS    
      join 
      VITEM on VITEM.Code= STOCKS.SE_ITEM_CODE 
      and SE_UNIT = VITEM.[First Unit] and VITEM.[Max Level] = 3  

когда я запускаю этот запрос, выдается следующая ошибка:

ОШИБКА

Подзапрос вернул более 1 значения. Это недопустимо, если подзапрос следует =,! =, <, <=,>,> = Или когда подзапрос используется в качестве выражения

1 ответ

Каков ваш вывод, когда вы бежите;

SELECT Code, [First Unit], [Max Level]
FROM Vitem
WHERE [Max Level] = 3
HAVING COUNT(*) > 1

Если у вас более одной строки, это означает, что вы будете возвращать более одного соответствия для ваших критериев UPDATE, поэтому ваш подзапрос взрывается. Вам нужно искать уникальную комбинацию строк из исходной таблицы.

Другие вопросы по тегам