SQL查询与组函数应用实例.pdfVIP

  • 0
  • 0
  • 约2.87千字
  • 约 6页
  • 2026-02-12 发布于北京
  • 举报

测试

1.组函数处理多行返回一行吗?

是的

2.组函数不计算空值吗?

YES

3.where子句能否使用组函数进行过滤?

不可以。

HAVING

4.查询公司员工工资的最大值、最小值、平均值和总和

SELECTmax(salary),min(salary),avg(salary),

sum(salary)FROMemployees

5.查询各job_id的员工工资的最大值、最小值、平均值和总

和SELECTmax(salary),min(salary),avg(salary),

sum(salary)FROMemployeesGROUPBYjob_id

6.选择具有各个job_id的员工人

数codeSELECTjob_id,

count(employee_id)FROM

employeesGROUPBY

job_id/code

7.查询员工最高工资和最低工资的差距(

DIFFERENCE)SELECTmax(salary)‑min(salary)

DIFFERENCEFROMemployees

测试

1.组函数处理多行返回一行吗?

YES

2.组函数不计算空值吗?

YES

3.where子句可否使用组函数进行过滤?

NO.HAVING

4.查询公司员工工资的最大值,最小值,平均值,总和

SELECTmax(salary),min(salary),avg(salary),sum(salary)

FROMemployees

5.查询各job_id的员工工资的最大值,最小值,平均值,总和

SELECTmax(salary),min(salary),avg(salary),sum(salary)

FROMemployees

GROUPBYjob_id

6.选择具有各个job_id的员工人数

SELECTjob_id,count(employee_id)

FROMemployees

GROUPBYjob_id

7.查询员工最高工资和最低工资的差距(DIFFERENCE)

SELECTmax(salary)-min(salary)DIFFERENCE

FROMemployees

8.查询各个管理者手下员工的最低工资,其中最低工资不能低于

6000,没有管理者的员工不计算在内。

SELECTmin(salary)

FROMemployees

WHEREmanager_id不

为nullGROUPBY

manager_idHAVING

min(salary)6000

9.查询所有部门的名字、location_id、员工数量和工资平均值

Selectdepartment_name,location_id,

count(employee_id),avg(salary)Fromemployeesjoin

departmentsUsing(department_id)Groupby

department_name,location_id

10.查询公司在1995‑1998年之间,每年雇用的人数,结果类似下

面的格式

t

Selectcount(*),

sum(decode(to_char(hire_date,yyyy),1995,1,0))

1995,sum(decode(to_char(hire_date,yyyy),1996,1,

0))1996,sum(decode(to_char(hire_date,yyyy),

1997,1,0))1997,

8.查询各个管理者手下员工的最低工资,其中最低工资不能低于

6000,没有管理者的员工不计算在内

SELECTmin(salary)

FROMemployees

Wheremanager_idisnotnull

Groupbymanager_id

Havingmin(salary)6000

9.查询所有部门的名字,location_id,员工数量和工资平均值

Selectdepartment_name,location_id,count(employee_id),avg(salary)

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档