已知信息
员工表 Employee
名称 | 类型 | 描述 |
---|---|---|
EmployeeId | Int | 员工id(唯一) |
Name | Varchar(50) | 员工姓名 |
Age | Int | 员工年龄 |
Varchar(50) | 员工邮箱 | |
Level | Int | 员工能级 |
工资表 salary
名称 | 类型 | 描述 |
---|---|---|
SalaryId | Int | 工资id(唯一) |
EmployeeId | Int | 员工id |
Money | Double | 工资金额 |
Date | Datetime | 发放日期 |
题目及解答
查询偶有员工的姓名和邮箱,并按照年龄降序、姓名升序排序。
select Name,Email
from Employee
order by Age asc,Name desc;
查询员工级别为1的所有员工的姓名及其对应的工资金额总和。
①select e.Name,s.Money
from Employee e
inner join Salary s
on e.EmployeeId = s.EmployeeId
where e.Level = 1
查询所有高于平均工资的工资发放信息以及对应的员工信息(发放日期、工资金额、员工id,员工姓名、员工年龄、员工邮箱、员工级别)
select s.Date,s.Money,s.EmployeeId,e.Name,e,Age,e.Email,e.Level
from Employee e
inner join Salary s
on e.EmployeeId = s.EmployeeId
where s.Money >(
select avg(Money)
from Salary
);