应该不算是个难问题,请进来看看

ztchen 2003-08-20 05:14:00
我的数据库表字段如下:
xh 学号
kcID 课程ID
kscs 考试次数
zhcj 综合成绩
....
我想找出一个学号(xh)中考试次数(kscs)为最大的记录。
我用SELECT MAX(kscs) FROM cjzb WHEER xh='100000' GROUP BY kcID
分组查询的结果是我所期望的结果,但只包含了kscs一个字段。而我想要的是取其他多个字段的内容,请问有方法能让我同时能够查询到整个表的所有字段(*)?
...全文
86 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ztchen 2003-08-21
  • 打赏
  • 举报
回复
带星的两位都很厉害,你们的回答令我茅塞顿开,我就是卡在了平时不太使用表别名上,我试来试去一直是用kcID=kcID,所以结果可想而知,现在知道了,谢谢你们!
至于楼下几位的答案都不是我所期望的,但还是要感谢你们!
dafu71 2003-08-20
  • 打赏
  • 举报
回复
我的数据库表字段如下:
xh 学号
kcID 课程ID
kscs 考试次数
zhcj 综合成绩
....
我想找出一个学号(xh)中考试次数(kscs)为最大的记录。
select * from yourtable as tmp where kscs=(select max(kscs) from yourtable where xh=tmp.xh)
lxf31 2003-08-20
  • 打赏
  • 举报
回复
select * from [表名] where kscs=(SELECT MAX(kscs) FROM cjzb WHEER xh='100000' GROUP BY kcID)

不知道我理解的对不?
amtyuranus 2003-08-20
  • 打赏
  • 举报
回复
上面既然出来你想要的结果了,那么通过kscs连接一下就可以出来了
pengdali 2003-08-20
  • 打赏
  • 举报
回复
select * from 表 tem where xh='100000' and kscs=(select max(kscs) from cjzb where xh='100000' and kcid=tem.kcid)
caiyunxia 2003-08-20
  • 打赏
  • 举报
回复
select * from cjzb a
where exists(select * from (SELECT MAX(kscs) kscs,kcid FROM cjzb WHEER xh='100000' GROUP BY kcID) b where a.kcid=kcid and a.kscs=kscs and a.xh='100000' )
caiyunxia 2003-08-20
  • 打赏
  • 举报
回复
select a.* from cjzb a ,(SELECT MAX(kscs) kscs,kcid FROM cjzb WHEER xh='100000' GROUP BY kcID) b
where xh='100000' and a.kscs=b.kscs and a.kcid =b.kcid

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧