这是一个相当简单的查询,抛出此错误:
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;
有趣的是,这曾经工作并突然停止。有任何想法吗?
解决了。
视图中的两个表虽然在字段名称和定义方面相同,但具有不同的字段顺序。 我放弃并使用与另一个相同的DDL重新创建其中一个表,现在它正常工作。
我不知道为什么会出现问题,但也许其他人可以回答这个问题。