SQL第九章

本文提供了多个SQL查询示例,包括按出生日期和成绩查询学生信息,查找特定科目考试的高分和低分,筛选年龄最小的学生,以及获取学生的所有考试记录等。还涉及到日期运算和生成新的邮箱地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

--上机3
  --按照出生日期查询第一学期的学生信息
  SELECT*FROM Student WHERE GradeId=1 order by BornDate
  --按照日期先后,成绩由高到低
  SELECT*FROM Result WHERE SubjectId=1 order by ExamDate,StudentResult
  --查询2013年3月22日参加"面向对象程序设计"考试的前五名学生的成绩信息
  SELECT Top 5*FROM Result WHERE SubjectId=8 AND ExamDate='2013-3-22' order by StudentResult DESC
  --查询Y2的课时最多的科目名称
  SELECT TOP 1 SubjectName AS Y2的课时最多的科目名称,ClassHour AS 课时 FROM Subject WHERE GradeId=3 ORDER BY ClassHour DESC
  --查询年龄年龄最小的学生的姓名及所在的年级
  SELECT TOP 1 GradeId AS 年龄最小的学生所在的年级,StudentName AS 姓名 FROM Student ORDER BY BornDate DESC
  --查询2013年3月22日参加考试的最低分出现在那个科目
  SELECT TOP 1 SubjectId,StudentResult AS 分数 FROM Result WHERE ExamDate='2013-3-22' ORDER BY StudentResult
  --查询学号为's1101003'的学生参加过的所有考试信息,并按照时间先后次序显示
  SELECT*FROM Result WHERE StudentNo='S1101003' ORDER BY ExamDate
  --查询学号为's1101003'的学生参加过的所有考试中的最高分及时间,科目
   SELECT TOP 1 * FROM Result WHERE StudentNo='S1101003' ORDER BY StudentResult DESC
   
   
   --上机4
   --查询年龄超过20周岁的第二学年的学生信息(假设一年365天)
   SELECT*FROM Student WHERE GradeId=3 AND (DATEDIFF(DD,BornDate,GETDATE())>=365*20)
   --查询一月份过生日的学生信息
   SELECT*FROM Student WHERE DATEPART(MM,BornDate)=1
   --查询今天过生日的学生姓名及所在年级
   SELECT StudentName,GradeId FROM Student
   --查询学号为
   SELECT RIGHT(Email,Len(Email)-CHARINDEX('@',Email))FROM Student WHERE StudentNo='Y21003007'
   --新生入学
   SELECT '1'+CONVERT(VARCHAR(4),DATEPART(YYYY,GETDATE()))+CONVERT(VARCHAR(2),DATEPART(MM,GETDATE()))+CONVERT(VARCHAR(2),DATEPART(DD,GETDATE())+RIGHT(RAND(),4))+'@jbit.com' AS 邮箱 FROM [MySchool].[dbo].[Student]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值