无效的oracle视图列

时间:2011-06-17 20:01:17

标签: oracle

我正在创建一个视图,我在视图中的一个字段是PO字段(它是输出表的主键)

在输出表中,主键是复合键(Id + cntrid)

我写了以下语句来获取唯一键

select  (po_cntr || proj_id) PO

但它仍然显示重复,这里缺少什么?

1 个答案:

答案 0 :(得分:2)

听起来连续值不是唯一的。

例如,如果你有两行:

PO_CNTR    PO_ID
ABC12      1
ABC1       21

然后两者的连接值将为'ABC121'。

最可能最简单的解决方案是在连接字段中包含分隔符:

select  (po_cntr || '-' || proj_id) PO