sql >> Base de Datos >  >> RDS >> Sqlserver

Uso de aplicación cruzada en la declaración de actualización

Tenías razón, Alberto. Hice algunas pruebas y descubrí que es posible, de hecho. El uso es el mismo que en un SELECT declaración. Por ejemplo:

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 ...