INFORMIX:与ALIAS一起更新?

时间:2016-10-21 08:23:57

标签: sql alias informix

update prpcopycoins a set a.comtype=(
    select b.comtype from prpcopycoins b where b.policyno=a.policyno and b.serialno=a.serialno and b.applyno[1]='E')
where a.applyno in ('1461F00001', '1461F00002');

我尝试使用同一个表中其他行的值更新表prpcopycoins的多行。由于表示了别名,上面的代码出现语法错误。如何纠正?

我正在使用IBM Informix Dynamic Server Version 11.50.FC8W4'。

1 个答案:

答案 0 :(得分:2)

比较来自Informix 11.5011.70UPDATE文档,我发现别名可以在11.70中使用,并且在11.50中不可用。我也有11.50,我不能在UPDATE中使用别名。

我会编写SPL函数getcomtype(policyno, serialno)并使用它:

update prpcopycoins set comtype=getcomtype(policyno, serialno)
where applyno in ('1461F00001', '1461F00002');