sql - 为什么在此查询中出现错误 “ORA-00904: invalid identifier”?

标签 sql oracle compiler-errors ora-00904

我已经建立了以下查询,但是当我尝试运行它会引发错误:

ORA-00904: "CASE_MASTER"."FOLLOWUP_DATE":
           invalid identifier 00904. 00000 -  "%s: invalid identifier"
*Cause: 
*Action: Error at Line: 76 Column: 14

您能给我提示还是告诉我什么地方出了问题?

查询:
SELECT DISTINCT case_event_assess.case_id
  FROM case_event        ce
      ,case_event_assess
      ,lm_datasheet
      ,case_product      cp
      ,case_assess       ca
/* New AC Name: Exp: Testing query */
 WHERE ce.case_id = case_master.case_id
   AND ce.case_id = case_event_assess.case_id
   AND ce.seq_num = case_event_assess.event_seq_num
   AND case_event_assess.case_id = case_master.case_id
   AND ca.case_id = case_master.case_id
   AND ca.case_id = case_event_assess.case_id
   AND lm_datasheet.datasheet_id = case_event_assess.datasheet_id
   AND (sheet_name = 'IB' OR license_id = 0)
   AND ce.case_id = cp.case_id
   AND cp.seq_num = case_event_assess.prod_seq_num
   AND EXISTS (
        SELECT 1 FROM lm_product lp
         WHERE lp.drug_code = cp.co_drug_code
            OR lp.product_id = cp.pat_exposure )
   AND case_master.state_id > 1
   AND NOT EXISTS(
        SELECT DISTINCT case_event_assess.case_id
          FROM case_event_assess
         WHERE case_event_assess.case_id = case_master.case_id
           AND case_master.rpt_type_id IN (1, 3)
           AND EXISTS (
                SELECT 1 FROM lm_license
                 WHERE lm_license.license_id = case_event_assess.license_id
                   AND lm_license.country_id IN (223, 23000101)
                   AND lm_license.license_type_id IN (4, 6))
        )
   AND EXISTS(
        SELECT 1 FROM lm_license
               ,case_event_assess cea
         WHERE cea.case_id = case_master.case_id
           AND cea.prod_seq_num = case_event_assess.prod_seq_num
           AND cea.license_id = lm_license.license_id
           AND lm_license.manufacturer_id IN (10087, 200000016, 202000406, 202000608, 202000609)
           AND lm_license.country_id = 223 )
 GROUP BY case_event_assess.case_id
         ,case_event_assess.event_seq_num
         ,case_event_assess.prod_seq_num

HAVING(
(/* Serious */
MIN(ce.sc_death) = 1 OR MIN(ce.sc_threat) = 1 OR MIN(ce.sc_disable) = 1 OR MIN(ce.sc_int_req) = 1
 OR MIN(ce.sc_cong_anom) = 1 OR MIN(ce.sc_hosp) = 1 OR MIN(ce.med_serious) = 1 OR MIN(ce.sc_other) = 1
)
AND
( /* Unlisted*/
MIN(decode(lm_datasheet.datasheet_id, 0, 1, NULL, 1, abs(det_listedness_id - 2))) = 0
 OR MIN(decode(lm_datasheet.datasheet_id, 0, 3, NULL, 3, det_listedness_id)) = 3
))

最佳答案

由于在case_master-子句中没有名为from的表,因此您不能在where-子句中使用该表。

关于sql - 为什么在此查询中出现错误 “ORA-00904: invalid identifier”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33409642/

相关文章:

php - 通过链接进行 SQL 注入(inject)?

c++ - 代码::Blocks, and C++ Compiler problem. cant compile a header

php - Laravel 查询异常

java - 超时后如何重新建立 JDBC 连接?

sql - "entity"特定序列

Oracle - 在一个事务中执行多个sql文件

c++ - 编译错误: invalid conversion when calling base-type constructor

c++ - 错误: Too many initializers for character array [closed]

sql - 如何从oracle sql中只选择1行?

sql - 如何删除外键引用的唯一索引?