本文共 1662 字,大约阅读时间需要 5 分钟。
use employee
go
select max(base_salary),min(base_salary),count(*),avg(base_salary),sum(base_salary) from emp where position='高级讲师'
--显示'高级讲师'的最高工资以及最低工资和人数总和以及工资总和。
select count(home_addr) from student
-----显示student表中家庭地址不为空的所有学生总和。
select count(*) from student
---显示student表中的所有学生总和。
select position as '职位',avg(base_salary) as '平均工资' from emp group by position
--------Select后的列表如有聚合函数,除聚合函数外,其他列必须出现在group by 后,否则出错。
---显示雇员表中各职位的平均工资。
select sex,sum(age) from student group by sex having sum(age)<100
----按照性别总和所有学生的年龄,并且在输出结果中筛选出总年龄小于的。
select student_id,sum(grade) from student group by student_id having sum(grade)>=500
------将student表中的所有学生的成绩按照学号总和统计然后在输出结果中筛选出总成绩大于分的学生。
select datepart(dd,orderdate) as '第天',sum(ordersum) as '金额' from orders where datepart(mm,orderdate)=4 group by datepart(dd,orderdate)
-----查询orders表中所有商品的出售情况,只显示月份每一天商品的出售金额总和统计的结果。
select datepart(mm,orderdate) as '月份',sum(ordersum) as '金额' from orders where datepart(yy,orderdate)=2007 group by datepart(mm,orderdate)
--------查询orders表中所有商品的出售情况,只显示年每月商品的出售金额总和统计的结果。
select datepart(yy,orderdate) as '年份',sum(ordersum) as '金额' from orders group by datepart(yy,orderdate)
----------查询orders表中所有商品的出售情况,显示年出售商品金额总和的统计结果。
select student_name,case when sex=1 then '男' when sex=0 then '女' else '不分男女' end as '性别' from student
---------显示student表中所有学生的性别,别且将表中所定义的1 装换成男,女显示出来。
select emp_name,position, case when position='初级讲师' then base_salary+1000 when position='中级讲师' then base_salary+2000 when position='高级讲师' then base_salary+3000 else base_salary end from emp
------显示如果职位是初级讲师则底薪加,中级讲师底薪加高级讲师底薪加其他不加,最后显示计算后的统计结果。
本文转自 沐小七 51CTO博客,原文链接:http://blog.51cto.com/3088522/566620
转载地址:http://rvgum.baihongyu.com/