Использование cross apply в инструкции update

Можно ли использовать предложение cross apply в части инструкции обновления в SQL Server 2005?

Ответы

Ответ 1

Йо, где правы Альберт. Я сделал несколько тестов и обнаружил, что это возможно. Использование такое же, как в инструкции SELECT. Например:

UPDATE some_table
SET some_row = another_row,
    some_row2 = another_row/2
FROM some_table st
  CROSS APPLY
    (SELECT TOP 1 another_row FROM another_table at WHERE at.shared_id=st.shared_id)
WHERE ...

Ответ 2

Я так считаю. Пример, приведенный здесь.