SQL server 数据库 (函数篇 2)

函数

上篇:函数篇1

  • 聚合函数
  • sum()
    求和,将指定字段中的数据累加求和,只能对数字型字段进行统计。
  • avg()
    求平均值,统计指定字段中的平均数值。
  • max()
    最大值,统计指定字段中的最大数值,如果有相同的数值,则按照物理排序显示第一个。
  • min()
    最小值,统计指定字段中的最小数值。
  • count()
    求个数,统计指定字段中或满足查询条件的结果中,数据记录的数量
  • 实例:
  • 查询工龄大于10年的人数
select dang_an.name, count(gl) as 人数 from dang_an where gl>10 group by dang_an.name
  • 查询男员工、女员工的人数
select dang_an.sex,count(dang_an.sex)  as 人数 from dang_an   group by  sex
  • 查询每位员工的平均工资和平均考核分
select dang_an.name,avg(gongzi.gongzi)as 平均工资,avg(kaohe.kaohe)as 平均考核分 from dang_an,gongzi,kaohe group by dang_an.name
  • 查询销售部每位员工的总工资和总业绩
select dang_an.name,sum(gongzi.gongzi)as 总工资,sum(yeji.yeji)as 总业绩 from dang_an,zhiwei,gongzi,yeji where dang_an.zw_id=zhiwei.zw_id and dang_an.id=gongzi.id and dang_an.id=yeji.id and gongzi.nian=yeji.nian and gongzi.yue=yeji.yue and zhiwei.zw='销售' group by dang_an.name
  • 查询每个员工的所有工资,最高工资和最低工资,以如下形式显示:姓名,最高,最低
select dang_an.name as 姓名,max(gongzi.gongzi)as 最高,min(gongzi.gongzi)as 最低 from dang_an,gongzi where dang_an.id=gongzi.id group by dang_an.name
  • 日期函数
  • GetDate() 取得当前的系统日期
SELECT GETDATE()
返回:当前日期和时间
  • DateAdd() 添加指定的年(yy)、月(mm)或日(dd)
SELECT DATEADD(mm,4,'2017-12-20')
返回:2018-04-20(增加4个月)
  • DateDiff() 比较两个日期之间的指定日期部分的差
SELECT DATEDIFF(yy,'2000-12-20','2017-06-16')
返回:17(相差17年)
  • DateName() 显示指定日期中特定部分的字符串
SELECT DATENAME(DW,'2017-06-16')
返回:星期五(dw是星期)
  • DatePart() 显示日期中指定日期部分的整数形式
SELECT DATEPART(mm,'2017-06-16')
返回:6(六月)
  • 小拓展
  • 查询自己活了多少天
    select DATEDIFF(dd,‘xxxx-xx-xx’,GETDATE())
  • 查询每位员工出生的日期是星期几
select dang_an.name, DATENAME(dw,dang_an.csny)from dang_an

猜你喜欢

转载自blog.csdn.net/m0_50744953/article/details/109961983
今日推荐