有两个查询,其输出我需要作为使用联合所得组但在一个查询有map_id
这是数据类型VARCHAR2(60),并在查询2此列中缺少的。 Map_id实际上是存储在正在使用的表格中的一个序列。查询2具有没有MAP_ID为了这个,我已经写了类似的表:表达必须具有相同的数据类型在UNION子句
select * from
(select map_id,person_id,emp_num from table_abc)
UNION
(SELECT ROWID MAP_ID , PERSON_ID, EMP_NUM FROM TABLE_XYZ)
现在的错误来了:
ORA-01790: expression must have same datatype as corresponding expression
01790. 00000 - "expression must have same datatype as corresponding expression"
*Cause:
*Action:
Error at Line: 2 Column: 9
我怎样才能查询2使用任何增量值,以使数据类型两个查询之间的匹配?
Hi @ karthik.venkatramana - No query 2 has rowid as map_id,so that there is a incremented sequence in query 2 .... –
@ divya.trehan573是你的列名rowid map_id?如果是,那么请将该列转换为适当的数据类型。它会工作。类似cast(rowid map_id AS float)。否则,如果列名只是rowid或map_id,则可以直接使用它。也让我们知道什么是列的数据类型,以便我们可以帮助你。 –