如何使用自己的值加上其他表中的变量更新一个表列?

时间:2013-01-14 10:41:11

标签: sql oracle

  

可能重复:
  Oracle - Update statement with inner join

在SQL Server Developer Edition中,我想用另一个表更新一个具有自己的值和变量的列。

在表格sa_tran_item中,ref_no6字段显示"NYN" 和其他表apo_rms_i_item_placeSORTIMENTSGRUPP_KOD字段显示10

我想将表格sa_tran_itemref_no6字段更新为"NYN10"

我的查询

UPDATE sa_tran_item 
SET ref_no6 = "ref_no6" + "a.SORTIMENTSGRUPP_KOD" 
FROM apo_rms_i_item_place a, sa_tran_item 
WHERE a.varnummer in  (select item from item_master where item_number_type='MANL' and PRIMARY_REF_ITEM_IND = 'Y' and item_parent in 
(select  ITEM from sa_tran_item where  error_ind = 'Y' and tran_seq_no in 
(select tran_seq_no from sa_error where tran_seq_in ='49910349001'  error_code like 'ACG_NOT_FOUND') ));

1 个答案:

答案 0 :(得分:0)

在oracle中,双管道||用于连接字符串值。您可以使用

进行更新
SET ref_no6 = ref_no6 || TO_CHAR(a.SORTIMENTSGRUPP_KOD)

如果列SORTIMENTSGRUPP_KOD是整数类型且

SET ref_no6 = ref_no6 || a.SORTIMENTSGRUPP_KOD

如果是string / varchar2类型。