在更新语句中使用交叉应用

时间:2011-09-20 22:59:38

标签: sql-server sql-server-2005 sql-update cross-apply

是否可以在SQL Server 2005中的update语句的from部分中使用cross apply子句?

1 个答案:

答案 0 :(得分:28)

你在哪里,艾伯特。我做了一些测试,发现确实可能。用法与SELECT语句中的用法相同。例如:

UPDATE some_table
SET some_row = A.another_row,
    some_row2 = A.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) AS A
WHERE ...