【发布时间】:2016-01-19 07:27:29
【问题描述】:
这是一个引发此错误的相当简单的查询:
SELECT RR.REQUEST_ID
FROM CCS_REQUEST_RESPONSE RR
INNER JOIN VW_STUDENT_CURRENT_AND_HIST VW
ON RR.STUDENTID = VW.STUDENT_NUMBER
这仅在加入视图时发生。
该视图是所有 2 个相同表的简单联合。
当我在上述查询中替换单个表而不是视图时,它可以正常工作。
所以,
SELECT RR.REQUEST_ID
FROM CCS_REQUEST_RESPONSE RR
INNER JOIN HISTORICAL_STUDENTS VW
ON RR.STUDENTID = VW.STUDENT_NUMBER
工作得很好。
这是视图:
CREATE OR REPLACE VIEW "VW_STUDENT_CURRENT_AND_HIST" ("STUDENT_NUMBER") AS
SELECT "STUDENT_NUMBER"
FROM HISTORICAL_STUDENTS
UNION ALL
SELECT "STUDENT_NUMBER"
FROM CURRENT_YEAR_STUDENTS;
有趣的是,这曾经可以工作,但突然停止了。 有什么想法吗?
【问题讨论】:
-
无法将 student_number 转换为 SELECT CAST(STUDENT_NUMBER AS NUMBER(9)) AS STUDENT_NUMBER 中的数字
-
请使用
DESC描述所有表格。
标签: sql oracle join plsql views