根据另一个表结果更新

2021-09-10 00:00:00 sql tsql sql-server-2008 sql-server

我想根据另一个表结果集更新临时表.

I want to update a temp table based on another table result set.

任何建议.选择查询独立工作.但我正在考虑与更新语句集成.

Any suggestions. The select query works independently. But I am thinking to integrate with the update statement.

UPDATE #person_membership_promo_ext 
SET note_about=
(
    select note_text
    FROM note nt 
    INNER JOIN #person_membership_promo_ext per
      ON per.person_id=nt.main_ref_id
        and per.membership_type='P'
        and note_id=(select MAX(note_id)from note nt_1
    where nt_1.main_ref_id=per.person_id)
) 

推荐答案

给你,

Update per
set per.note_about = nt.note_text
FROM note nt 
INNER JOIN #person_membership_promo_ext per
ON per.person_id=nt.main_ref_id
and per.membership_type='P'
and note_id=(select MAX(note_id)from note nt_1
where nt_1.main_ref_id=per.person_id)

我希望这会有所帮助!

相关文章