Oracle 插入數據報錯 ORA-00918

1. 報錯內容

ErrorCode = 918, SQLState = 23000, Details = ORA-00918: column 'TO_DATE('2023-12-1809:13:45','YYYY-MM-DDHH24:MI:SS')' in field list ambiguously defined
 

 2. 原因

sql中的值重複了,導致Oracle未能明確,列跟哪一列進行對應

insert into
table_name(
ID,
col_id,
col_NAME,
col_2_ID,
xx_NAME,
xxx3,
xxx3,
d3,
xx3,
col34,
col98,
CREATE_DATE,
LAST_DATE
)
select
SEQ.nextval,
a.*
from(
select
8,
'v1',
70,
'v3',
'333',
'xxx',
to_date('2023-12-18 09:13:45', 'yyyy-mm-dd hh24:mi:ss'),
'Ddd',
0,
1,
to_date('2023-12-18 09:13:45', 'yyyy-mm-dd hh24:mi:ss'),
to_date('2023-12-18 09:13:45', 'yyyy-mm-dd hh24:mi:ss')
from
dual
) a

3. 解決方案

    值加一個別名

insert into
table_name(
ID,
col_id,
col_NAME,
col_2_ID,
xx_NAME,
xxx3,
xxx3,
d3,
xx3,
col34,
col98,
CREATE_DATE,
LAST_DATE
)
select
SEQ.nextval,
a.*
from(
select
8,
'v1',
70,
'v3',
'333',
'xxx',
to_date('2023-12-18 09:13:45', 'yyyy-mm-dd hh24:mi:ss') as d1,
'Ddd',
0,
1,
to_date('2023-12-18 09:13:45', 'yyyy-mm-dd hh24:mi:ss') as d2,
to_date('2023-12-18 09:13:45', 'yyyy-mm-dd hh24:mi:ss') as d3
from
dual
) a

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章