Sql 我有一个问题,但它没有';不行。我怎样才能写对呢?
总共有三张桌子。我编写了下面的查询来合并这三个表。我想编写一个sql语句来显示在IT部门工作并获得高于平均工资的员工。我的发言如下。但是当语句运行时,我得到一个“未找到数据”警告。我怎样才能写得正确Sql 我有一个问题,但它没有';不行。我怎样才能写对呢?,sql,oracle,group-by,Sql,Oracle,Group By,总共有三张桌子。我编写了下面的查询来合并这三个表。我想编写一个sql语句来显示在IT部门工作并获得高于平均工资的员工。我的发言如下。但是当语句运行时,我得到一个“未找到数据”警告。我怎样才能写得正确 `select e.FIRST_NAME ,e.LAST_NAME ,c.DEPARTMENT_NAME ,l.CITY ,l.STATE_PROVINCE ,k.COUNTRY_NAME ,e.SALARY from hr.employees e join hr.departments
`select
e.FIRST_NAME
,e.LAST_NAME
,c.DEPARTMENT_NAME
,l.CITY
,l.STATE_PROVINCE
,k.COUNTRY_NAME
,e.SALARY
from hr.employees e join hr.departments c on (c.DEPARTMENT_ID=e.DEPARTMENT_ID)
join hr.locations l on (c.LOCATION_ID=l.LOCATION_ID)
join hr.countries k on (k.COUNTRY_ID=l.COUNTRY_ID) where DEPARTMENT_NAME='IT'
and SALARY in (select SALARY from hr.employees group by SALARY having SALARY > AVG(SALARY));`
请尝试以下公司的平均工资:
select
e.FIRST_NAME
,e.LAST_NAME
,c.DEPARTMENT_NAME
,l.CITY
,l.STATE_PROVINCE
,k.COUNTRY_NAME
,e.SALARY
from hr.employees e join hr.departments c on (c.DEPARTMENT_ID=e.DEPARTMENT_ID)
join hr.locations l on (c.LOCATION_ID=l.LOCATION_ID)
join hr.countries k on (k.COUNTRY_ID=l.COUNTRY_ID) where DEPARTMENT_NAME='IT'
and SALARY > (select avg(SALARY) from hr.employees);
和薪资>(选择平均薪资)…赚取高于平均薪资的薪资-IT部门平均薪资还是公司平均薪资?我使用的是公司平均薪资