从表A中获取特定值并将结果复制到表B中?

时间:2011-06-13 10:24:28

标签: sql

有没有办法从查询中获取结果并将结果复制到特定列中的其他表。

这是我到目前为止所拥有的

//get CONTACT_ID from RETAILER_ID and create some loop that goes through all CONTACT_ID values and execute the queries below:

select CSN from CONTACTS where CONTACT_ID = '103309';

以上查询从CONTACTS表获取CSN值,我想执行以下内容:

update RETAILER_CONTACTS set columnB = new CSN where CONTACTS_ID='103309';

我需要为RETAILER_CONTACTS中的每一条记录执行此操作,因此为什么我需要在通过以下查询找到的每个CONTACTS_ID的某个循环中执行上述操作:

从RETAILER_ID中选择CONTACT_ID;

提前致谢

1 个答案:

答案 0 :(得分:0)

不确定我是否理解你想要做什么,但大多数时候,在SQL中使用循环的愿望是一个麻烦的迹象。我认为你可以通过以下方式做你想做的事:

update RETAILER_CONTACTS 
set columnB = CSN
from RETAILER_CONTACTS RC, 
     CONTACTS C, 
     RETAILERS R
where C.CONTACT_ID = '103309'
and   C.CONTACT_ID = RC.CONTACT_ID
and   C.RETAILER_ID = RC.RETAILER_ID