【问题标题】:Failed to create view创建视图失败
【发布时间】:2021-05-09 10:18:15
【问题描述】:
CREATE OR REPLACE VIEW ALL_INTERRUPTED_DATA AS
select
    trigger_info_A.b1,
    trigger_info_A.b2,
    trigger_info_A.B3TEXT,
    trigger_info_A.elem,
    trigger_info_B.b1,
    trigger_info_B.b2,
    trigger_info_B.B3TEXT,
    trigger_info_B.elem,
    oms_source.source_code,
    energization_info.b1,
    energization_info.b2,
    energization_info.b3text,
    to_char(energization_info.deenergized_date,'DD-MM-YYYY Hh24:MI:SS'),
    to_char(energization_info.energized_date,'DD-MM-YYYY Hh24:MI:SS'),
    oms_source.connected_customer,
    trigger_info_A.comments
from
    energization_info,
    trigger_info trigger_info_A,
    trigger_info trigger_info_B,
    oms_source
where
    (
        energization_info.trigger_number = trigger_info_A.trigger_number
    )
    and (
        energization_info.ENERGIZED_TRIGGER_NUMBER = trigger_info_B.trigger_number
    )
    and (
        energization_info.b1 = oms_source.B1NAME
        and energization_info.b2 = oms_source.B2NAME
        and energization_info.b3 = oms_source.B3NAME
    ) WITH READ ONLY;

trigger_info_B.b1,trigger_info_B.b2,trigger_info_B.B3TEXT,trigger_info_B.elem,

ERROR at line 3: ORA-00957: duplicate column name

【问题讨论】:

    标签: sql oracle oracle10g ddl


    【解决方案1】:

    我可以在 select 子句中看到重复的名称。

    例子:

    trigger_info_A.b1
    trigger_info_B.b1
    

    在创建视图时,select 中的每一列必须具有不同的名称/别名。

    尝试找到这些列的重复名称,并使用别名给它们不同的名称。

    例子:

    trigger_info_A.b1 as A_b1
    trigger_info_B.b1 as B_b1
    

    【讨论】:

    • 创建别名后,我收到此错误ERROR at line 5: ORA-00998: must name this expression with a colum alias
    • 现在,那一定是不同的错误。该问题被要求提供重复的列名。它已解决(似乎如此)。您可以使用更新的查询和错误提出新问题。
    • 好的。非常感谢。
    猜你喜欢
    • 2018-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-04
    • 2012-06-05
    • 1970-01-01
    • 2022-12-03
    相关资源
    最近更新 更多