--统计选修了课程的学生人数SELECTCOUNT(DISTINCT SNo) 选修了课程的学生人数 FROM dbo.SC;--用GROUP BY统计不同职称的教师人数SELECT Prof 职称,COUNT(*) 教师人数 FROM dbo.Teacher GROUPBY Prof;--COMPUTE BY统计不同职称的教师人数SELECT TNo,Prof FROM dbo.Teacher ORDERBY Prof COMPUTE COUNT(TNo) BY Prof;
2、数据类型转换函数
--从tblTeacher表中查询教师的电话号码中的最后8位数字能被9整除的教师信息SELECT * FROM dbo.Teacher WHERE CONVERT(INT,RIGHT(Mobile,8)) %9=0
--查询学生的学号、姓名、出生日期。要求将出生日期转化为整数后显示
SELECT SNo,SName,CONVERT(INT,BirthDate)出生日期的内部存储形式 FROM dbo.Student
SELECT SNo,SName,BirthDate FROM dbo.Student
3、日期函数
--把当前日期转换为样式 101SELECT CONVERT(CHAR(10),GETDATE(),101) AS 当前日期
--计算所有学生的平均年龄
SELECTAVG(DATEDIFF(yy,BirthDate,GETDATE())) FROM dbo.Student;--查询最近两年选修课程的课程号SELECTDISTINCT SNo FROM dbo.SC WHERE DATEDIFF(yy,SDate,GETDATE())>=12;--分别获取数据库当前时间的年、月、日、小时SELECTYEAR(GETDATE()) 年,MONTH(GETDATE())月,DAY(GETDATE())日,DATEPART(hh,GETDATE())时
SELECT GETDATE()