首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ORA- 00918 :列明确定义为00918。00000 -有什么建议吗?

ORA- 00918 :列明确定义为00918。00000 -有什么建议吗?
EN

Stack Overflow用户
提问于 2022-02-05 16:41:02
回答 1查看 46关注 0票数 -2
代码语言:javascript
复制
WITH MYCTE AS
(
    SELECT  
        ENGINEERING.ENG_ID, ENGINEERING.NAME,
        ENGINEERING.SALARY, 
        MARKETING.MARKET_ID, MARKETING.NAME,
        MARKETING.SALARY 
    FROM 
        ENGINEERING 
    JOIN 
        MARKETING ON MARKETING.MARKET_ID = ENGINEERING.ENG_ID
)
SELECT 
    EMPLOYEE_ID, SUM(SALARY) TOTAL_SAL
FROM 
    EMPLOYEES S
JOIN 
    MYCTE K ON K.ENG_ID = S.EMPLOYEE_ID
GROUP BY 
    EMPLOYEE_ID
EN

回答 1

Stack Overflow用户

发布于 2022-02-05 16:47:55

在cte中,您有重复的薪资列名,您的查询返回错误的模糊别名,您engineering.salary为engineering_salary,marketing.salary为marketing_salary,或者运行此查询。

代码语言:javascript
复制
WITH MYCTE AS (
SELECT 
ENGINEERING.ENG_ID as eng_id,
ENGINEERING.NAME as engineering_name,
ENGINEERING.SALARY as engineering_salary
,MARKETING.MARKET_ID as market_id,
MARKETING.NAME as marketing_name,
MARKETING.SALARY as marketing_salary
FROM ENGINEERING
JOIN 
MARKETING
 ON MARKETING.MARKET_ID=ENGINEERING.ENG_ID) 

SELECT EMPLOYEE_ID,
SUM(marketing_salary + engineering_salary ) TOTAL_SAL
 FROM EMPLOYEES S 
JOIN 
MYCTE K 
ON K.ENG_ID=S.EMPLOYEE_ID
 GROUP BY EMPLOYEE_ID;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71000008

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档