2011-09-20 16 views

Odpowiedz

20

Yo gdzie prawo Albert. Zrobiłem kilka testów i okazało się, że jest to możliwe. Użycie jest takie samo jak w instrukcji SELECT. Na przykład:

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

Nie zapomnij przyjąć poprawnej odpowiedzi pod nr. – abatishchev

+3

Powyższe zapytanie spowodowało błąd "Niepoprawna składnia w pobliżu") "." Zajęło mi trochę czasu, aby dowiedzieć się, dlaczego więc po prostu chcę dodać rozwiązanie tutaj, na wypadek, gdyby ktoś do niego dołączył. Dodanie "as" po krzyżyku zastosowało polecenie select, jakby go naprawiło. – Kjell

3

Tak sądzę. Przykład podany here.

+0

Człowiek, który był szybki! Dziękuję Ci. –

+0

Zrobiłem kilka testów. Jeśli masz rację, użycie jest takie samo jak w instrukcji SELECT. –

+1

Link do przykładu użycia CROSS APPLY w SELECT a nie UPDATE. – WileCau