ORA-00911无效字符错误:添加过滤条件后Oracle SQL执行失败
我尝试运行以下Oracle SQL语句:
WITH TRACKSYS_CAMBRIDGE1 AS( select DISTINCT 'tracksys' as SOURCE, PROJECT_ID_DNV, YR, TRACKING_TYPE, LEGACY_PA_DNV, ACCOUNT_ID_DNV, CA_ID, LNS_PREMISE_ID, SOURCE_DOMAIN, CUSTOMER_CONTACT_NAME_DNV, SITE_ADDRESS1_DNV, SITE_ADDRESS2_DNV, SITE_CITY_DNV, CITY_STANDARD_DNV, SITE_STATE_DNV, SITE_ZIP_DNV, ORIGINAL_DATASET, PROGRAM_SECTOR_FLAG_DNV, PROGRAM_VERBOSE_DNV, PROGRAM, PROGRAM_STANDARDIZED ,CASE WHEN program_standardized in ('NEW_CONSTRUCTION','RETROFIT','UPSTREAM') THEN 'LARGE_CI' WHEN program_standardized ='SMALL_BUSINESS' then 'SMALL_BUSINESS' ELSE 'RESIDENTIAL' END as program_standardized_1, CORE_INITIATIVE_VERBOSE, CORE_INITIATIVE_DNV, END_USE_VERBOSE_DNV, BCR_ID_DNV, BCR_DESCRIPTION_DNV, END_USE_IMPACTED_DNV, QUANTITY_DNV, MEASURE_LIFE_DNV, INSTALLATION_DATE_DNV, COMPLETE_DATE, VENDOR_INVOICE_DATE_DNV, VENDOR_NAME_DNV, GROSS_ANNUAL_KWH_DNV, GROSS_ANNUAL_THERMS_DNV, UP_PREMISE_ID, LNU_PREMISE_ID, PREMISE_ID FROM EE_STAGE.DNVGL_PROJMEAS_COMBINED_V1 --where BCR_DESCRIPTION_DNV <> ('CHP','CHP (MULTIFAMILY)','CHP - CUSTOM') --and END_USE_IMPACTED_DNV <>'CHP' where SITE_CITY_DNV in ('CAMABRIDGE', 'CAMBRDIGE', 'CAMBRIDE', 'CAMBRIDGE', 'CAMBRIDGE MA', 'CAMBRIDGEPORT', 'CAMBRIGE', 'CAMDRIDGE', 'CAMRIDGE', 'CANBRIDGE') and (BCR_DESCRIPTION_DNV !='CHP' and BCR_DESCRIPTION_DNV !='CHP (MULTIFAMILY)' and BCR_DESCRIPTION_DNV !='CHP - CUSTOM' and END_USE_IMPACTED_DNV !='CHP') --and SITE_STATE_DNV ='MA' ) select YR , program_standardized_1, sum (to_number(GROSS_ANNUAL_KWH_DNV)) AS GROSS_ANNUAL_KWH_DNV , sum (to_number(GROSS_ANNUAL_THERMS_DNV))AS GROSS_ANNUAL_THERMS_DNV FROM TRACKSYS_CAMBRIDGE1 WHERE YR IN ('2013','2014','2015','2016','2017','2018','2019','2020') GROUP BY YR, program_standardized_1 ORDER BY YR ASC
但持续收到错误提示:
ORA-00911: invalid character 00911. 00000 - "invalid character"
*Cause: identifiers may not start with any ASCII character other than
letters and numbers. $#_ are also allowed after the first
character. Identifiers enclosed by doublequotes may contain
any character other than a doublequote. Alternative quotes
(q'#...#') cannot use spaces, tabs, or carriage returns as
delimiters. For all other contexts, consult the SQL Language
Reference Manual.
*Action:
Error at Line: 68 Column: 4
该语句在未添加(BCR_DESCRIPTION_DNV !='CHP' and BCR_DESCRIPTION_DNV !='CHP (MULTIFAMILY)' and BCR_DESCRIPTION_DNV !='CHP - CUSTOM' and END_USE_IMPACTED_DNV !='CHP')这段过滤条件时可正常执行,因此判断其他字段无问题。预期语句能正常运行,但因第68行的问题无法执行,恳请协助排查解决。
内容的提问来源于stack exchange,提问作者Danielle Hanlon

