0

我有一个查询我正在做以向 oracle 报告显示记录。我需要作为选择的参数是,class_code但是当用户单击下拉值时,对他们来说有点混乱(这里很难解释),所以他们要求将study_intakeand组合class_code成一个对他们来说很清楚的词。

现在我所做的是使用 AS 作为结合了两者的新列的别名,但我无法将其回调(因为它不是正确的语法)

这是我的查询示例:

SELECT DISTINCT STUDENT_ATTENDENTS.IC_PASSPORT, 
STUDENT_ATTENDENTS.NAME,
 STUDENT_ATTENDENTS.A_DATE, 
STUDENT_ATTENDENTS.A_TYPE, 
STUDENT_ATTENDENTS.ATTEN, 
TUTORIAL_CLASSES_MASTER.LECTURER_NAME, 
STUDENT_ATTENDENTS.COURSE_CODE, 
STUDENT_ATTENDENTS.SUBJECT_CODE, 
SUBJECT_MASTER_TABLE.CREDIT_POINT,
TUTORIAL_CLASSES_MASTER.STUDY_INTAKE || ' ' || STUDENT_ATTENDENTS.CLASS_CODE AS Study_Intake_Class_Code


FROM STUDENT_ATTENDENTS, TUTORIAL_CLASSES_MASTER, SUBJECT_MASTER_TABLE

WHERE Study_Intake_Class_Code = :CLASS_DODE
AND STUDENT_ATTENDENTS.SUBJECT_CODE = SUBJECT_MASTER_TABLE.SUBJECT_CODE
AND (STUDENT_ATTENDENTS.CLASS_CODE = TUTORIAL_CLASSES_MASTER.CLASS_CODE)

该行将WHERE Study_Intake_Class_Code = :CLASS_DODE返回一个错误,即

ORA-00904: "STUDY_INTAKE_CLASS_CODE": 标识符无效

我不能使用别名。我想出的一个想法是创建一个视图,但这使报告变得混乱并影响了所有公式(我没有创建原始报告)

如何调整此查询以使其正常工作?任何想法或其他查询方式?

4

1 回答 1

1

只需将原始查询部分放入其中,而不是别名......即,

WHERE TUTORIAL_CLASSES_MASTER.STUDY_INTAKE || ' ' || STUDENT_ATTENDENTS.CLASS_CODE = :CLASS_DODE
于 2012-10-12T03:12:34.167 回答