如何用SQL查询出最新的记录变化?详见以下描述,谢谢!有两个表格Student 和 Change:表Student 记录学生的入学信息:Xh xm zt timech20100001 张三 在学 2010.9.120100002 李四 在学 2010.9.120100003 王五 在学 2010.9.120100004 钱六 在学 2010.9.1表Change 记录学生的学籍变化情况:xuhao xh ztchange

题目
如何用SQL查询出最新的记录变化?详见以下描述,谢谢!

有两个表格Student 和 Change:

表Student 记录学生的入学信息:

Xh                 xm            zt timech

20100001 张三 在学 2010.9.1

20100002 李四 在学 2010.9.1

20100003 王五 在学 2010.9.1

20100004 钱六 在学 2010.9.1

表Change 记录学生的学籍变化情况:

xuhao    xh             ztchange timech

1 20100001 辍学 2010.11.1

2 20100001 在学 2010.12.5

3 20100002 休学 2011.1.9

4 20100003 辍学 2011.3.9

5 20100002 在学 2011.6.6

现要求查询指定时间的在校生人数,例如2011.1.20,按上两表结果应为:

Xh                xm zt timech

20100001 张三 在学 2010.12.5

20100002 李四 休学 2011.1.9

20100003 王五 在学 2010.9.1

20100004 钱六 在学 2010.9.1

张三在2011.1.1时已经复学了,所以状态为在学,但时间为最近一次变化的时间2010.12.5

李四已经休学,变化时间为2011.1.9

王五此时还没辍学,钱六一直没变,因此两人的记录都没变。

如何用SQL语句完成以上查询呢? 谢谢!


相似考题
参考答案和解析

select

a.xh as xh,

a.xm as xm ,

case b.ztchange  when  ' ' then a.zt else b.ztchange end as zt ,

case b.timech when  ' ' then a.timech else b.timech end as timech

from student a

left join change b on a.xh = b.xh and b.timech > '20110120' and b.ztchange = '在学'

 

希望能帮到你,别忘了采纳我的答案哦,祝你生活愉快!


更多“如何用SQL查询出最新的记录变化?详见以下描述,谢谢! 有两个表格Student和Change:表Student记录学生的入学信息:Xhxmzttimech20100001 张三 在学 2010.9.120100002 李四 在学 2010.9.120100003 王五 在学 2010.9.120100004 钱六 在学 2010.9.1表Change记录学生的学籍变化情况:xuh”相关问题
  • 第1题:

    在考生文件夹下“student.mdb”数据库中有student、选课表和课程表。

    (1)以student、选课表和课程表为数据源,创建参数查询“按ID查询成绩”,实现输入学生的ID显示学生成绩,参数提示为“请输入学生ID',结果显示学生姓名、课程名称和成绩字段。查询结果如图所示。

    (2)以student、选课表和课程表为数据源,创建生成表查询成绩表,查询每个学生选

    课的成绩,结果显示学生姓名、课程名称和成绩字段?生成成绩表如图所示。


    正确答案:

  • 第2题:

    用SQL语言描述“在学生表中查找女学生的全部信息”,以下语句中正确的是( )。

    A.SELECT FROM学生表IF(性别='女')

    B.SELECT性别FROM学生表IF(性别='女')

    C.SELECT*FROM学生表WHERE(性别='女')

    D.SELECT*FROM性别WHERE(性别='女')


    正确答案:C
    解析:查询语句的基本格式是:
      SELECT *|字段名
      FORM表名
      WHERE条件

  • 第3题:

    在学生表中建立查询,“姓名”字段的查询条件设置为“Is Null”,运行该查询后,显示的记录是

    A)姓名字段中包含空格的记录

    B)姓名字段为空的记录

    C)姓名字段中木包含空格的记录

    D)姓名字段不为空的记录


    正确答案:A
    【答案】:A
    【知识点】:查询条件设计中函数的应用
    【解析】:使用 IsNull 函数可以判断表达式是否包含 Null 值。在本题中为“姓名”字段使用此函数意思是查询所有姓名为空的记录,故答案为A。

  • 第4题:

    若用Student表存储学生信息,Teacher表存储教师信息,Course表存储课程信息,Study表存储学生选修课程情况。教务处想要“查询2006年入学的计算机专业(CS)的学生中平均成绩在85分以上的学生信息”。请将以下SQL语句补充完整。注:用对应英文表示。

    SELECT *FROM Student WHERE Smajor="CS" AND Syear="2006"

    AND(1))

    (SELECT Sno FROM Study GROUP BY Sno

    HAVING(2))


    正确答案:(1)Sno IN (2) AVG(Grade)>85
    (1)Sno IN (2) AVG(Grade)>85 解析:SELECT[ALL|DISTINCT]目标列表达式>[,目标列表达式>]…
    FROM表名或视图名>[,表名或视图名>]
    [WHERE条件表达式>]
    [GROUP BY列名1>[HAVING条件表达式>]]
    [ORDER BY列名2>[ASC|DESC]…]
    子句顺序为SELECT、FROM、WHERE、GROUPBY、HAVING、ORDERBY,但SELECT和FROM是必需的,HAVING子句只能与GROUPBY搭配起来使用。
    子查询的语意应为“按学号分组、平均分大于85的学生的学号”,可得空(1)应填Sno IN,空(2)应填AVG(Grade)>85。

  • 第5题:

    若要从学生表中检索出jg并去掉重复记录,可使用如下SQL语句SELECT_________ig FROM student请选出正确的选项完成该语句


    正确答案:D
    在SELECT语句的后面,如果选用DISTINCT选项,表示去掉重复记录.选用ALL代表显示所有记录,选用*代表所有字段,而?是非法的。故选项D为正确答案。

  • 第6题:

    在VFP中,恢复学生表student中删除的男生记录使用的SQL语句为:性别=”男”。


    正确答案:
    RECALLFOR
    VFP记录删除分为逻辑删除和物理删除,被逻辑删除的记录可以恢复,恢复记录的命令是RECALL,格式为RECALL [FOR lExpression1];物理删除有删除标记记录的命令是PACK,执行该命令后所有有删除标记的记录将从表中被物理删除且不能被恢复;使用ZAP命令可以物理删除表中的全部记录(不管是否有删除标记),该命令只是删除全部记录,并没有删除表,执行完该命令后表结构依然存在。 

  • 第7题:

    假定学生关系表为Student(学号,姓名,年龄,所在学院,学院地点,学院电话),它符合第几范式?如何修改能使其满足第三范式?


    正确答案: Student表符合第二范式,但是不满足第三范式,因为该表的主码为学号,而学号->所在学院,所在学院->学院地点,故学院地点传递依赖于学号。要使得该表满足第三范式,可以将该表拆成两个表:(学号,姓名,年龄,所在学院),(所在学院,学院地点,学院电话)。

  • 第8题:

    学生通过重考得到的成绩,在学籍表中有“重考”的注明。


    正确答案:错误

  • 第9题:

    “学生”表中“性别”列的默认值是‘女’,以下说法正确的是()。

    • A、不能在学生表中输入性别的值
    • B、若在学生表中的一行不输入性别的值,则该行的性别为‘女’
    • C、只能在学生表中输入‘女’
    • D、不能删除性别为女的学生信息

    正确答案:B

  • 第10题:

    在学生管理的关系数据库中,存取一个学生信息的数据单位是()。

    • A、数据元素
    • B、字段
    • C、记录
    • D、数据表

    正确答案:C

  • 第11题:

    问答题
    假定学生关系表为Student(学号,姓名,年龄,所在学院,学院地点,学院电话),它符合第几范式?如何修改能使其满足第三范式?

    正确答案: Student表符合第二范式,但是不满足第三范式,因为该表的主码为学号,而学号->所在学院,所在学院->学院地点,故学院地点传递依赖于学号。要使得该表满足第三范式,可以将该表拆成两个表:(学号,姓名,年龄,所在学院),(所在学院,学院地点,学院电话)。
    解析: 暂无解析

  • 第12题:

    单选题
    在学生管理的关系数据库中,存取一个学生信息的数据单位是()。
    A

    数据元素

    B

    字段

    C

    记录

    D

    数据表


    正确答案: B
    解析: 在学生管理的关系数据库中,存取一个学生信息的数据单位是记录。

  • 第13题:

    在“学籍管理”数据库中,有学生表与选课表,两表间以学生表为主表,以学号建立一对多联系。设计如图5-1所示的表单,当在学生表中选中一个记录时,子表显示相应同学的选课记录。


    正确答案:操作步骤如下: ①在表单中创建2个“标签”控件和2个“表格”控件并选好位置和大小。 ②设置控件的字体和字号。 ③打开“数据环境设计器”加入数据库中的表“学生.DBF”和“选课.DBF”2个表以学生表为主表以学号为关键字建立“一对多”的永久关联。表单控件的主要属性见表5-1。
    操作步骤如下: ①在表单中创建2个“标签”控件和2个“表格”控件,并选好位置和大小。 ②设置控件的字体和字号。 ③打开“数据环境设计器”,加入数据库中的表“学生.DBF”和“选课.DBF”,2个表以学生表为主表,以学号为关键字建立“一对多”的永久关联。表单控件的主要属性见表5-1。

  • 第14题:

    在学生表中建立查询,“姓名”字段的查询条件设置为“Is Null”,运行该查询后,显示的记录是( )。

    A.姓名段为空的记录

    B.姓名字段中包含空格的记录

    C.姓名字段不为空的记录

    D.姓名字段中不包含空格的记录


    正确答案:A
    “IsNull”表示的是为空,所以根据题意,所查询出来的结果为姓名字段为空的记录。

  • 第15题:

    在学生借书数据库中,已有“学生”表和“借阅”表,其中“学生”表含有“学号”、“姓名”等信息,“借阅”表含有“借阅编号”、“学号”等信息。若要找出没有借过书的学生记录,并显示其“学号”和“姓名”,则正确的查询设计是

    A.

    B.

    C.

    D.


    正确答案:A
    解析:首先,要找出没有借书记录的学生,在查询设计网格的“学号”列下的“条件”行中键入Is。Null。其次,由于只显示“学号”和“姓名”,取消“学号”列“显示”行中的复选框。

  • 第16题:

    在学生借书数据库中,已有“学生”表和“借阅”表,其中“学生”表中含有“学号”、“姓名”等信息,“借阅”表中含有“借阅编号”、“学号”等信息。若要找出没有借过书的学生记录,并显示其“学号”和“姓名”,则正确的查询设计是( )。


    正确答案:A
    题意中要求查找的是没有借过书的学生记录,所以“借阅”表中的学号应为空,所以条件表达式为IsNull,排除选项C.和选项D.。又由于只显示“学号”和“姓名”,所以排除选项B.。

  • 第17题:

    在学生表中删除姓名为"王华"的学生信息。


    正确答案:delete from 学生 where 姓名=

  • 第18题:

    在学生表中共有100条记录,执行如下命令,执行结果将是( )

    INDEX ON.总分TO ZF

    SETINDEXTOZF

    GO TOP

    DISPLAY

    A)显示的记录号是1

    B)显示分数最高的记录号

    C)显示的记录号是100

    D)显示分数最低的记录号


    正确答案:B
    利用命令INDEX建立总分降序的索引后,表的记录已经按照总分降序排列。执行命令GO TOP将指针移至排序后的第一条记录,该记录就是总分最高的记录。

  • 第19题:

    在SQL查询语句中,"UPDATE Student SET补助=补助+1.2"的意思是()

    • A、将Student表中的所有记录的补助均增加1.2
    • B、将Student表中的当前记录的补助增加1.2
    • C、将Student表中的所有记录的补助均设置为1.2
    • D、将Student表中的当前记录的补助设置为1.2

    正确答案:A

  • 第20题:

    在学籍管理系统中,检索出某一个学生的学籍信息需要对数据库进行()操作。

    • A、分类
    • B、查询
    • C、搜索
    • D、排序

    正确答案:B

  • 第21题:

    设表文件“学生.DBF”中有10条记录,执行如下两条命令: USE 学生 INSERT BLANK 其结果是在学生表文件的()

    • A、第1条记录的位置插入了1个空白记录
    • B、第2条记录的位置插入了1个空白记录
    • C、文件尾插入了1个空白记录
    • D、不确定位置插入了1个空白记录

    正确答案:B

  • 第22题:

    单选题
    在学籍管理系统中,检索出某一个学生的学籍信息需要对数据库进行()操作。
    A

    分类

    B

    查询

    C

    搜索

    D

    排序


    正确答案: A
    解析: 暂无解析

  • 第23题:

    单选题
    向student表插入一条新记录的正确SQL语句是(  )。
    A

    APPEND INTO student VALUES('0401','王芳','女',18)

    B

    APPEND student VALUES('0401','王芳','女',18)

    C

    INSERT INTO student VALUES('0401','王芳','女',18)

    D

    INSERT student VALUES('0401','王芳','女',18)


    正确答案: C
    解析:
    SQL插入命令的格式有两种:第一种是标准格式,为INSERT INTO dbf name[(fname1 [,fname2,…])]VALUES(eExpression1[,eExpression2,…]);第二种是Visual FoxPro格式,为INSERT INTO dbf name FORM ARRAY ArrayName/FROM MEMVAR。