为了账号安全,请及时绑定邮箱和手机立即绑定

如何查询某用户近一个月内正确率大于60%的阅读记录,每天只显示符合条件正确率最高的那个

如何查询某用户近一个月内正确率大于60%的阅读记录,每天只显示符合条件正确率最高的那个

潇潇雨雨 2018-12-07 02:57:56
表中字段:  RD_User, RD_OrginalArticle, RD_RightWords, RD_DictationArticle,  RD_LastReadIndex, RD_Speed, RD_ReadTime, RD_DictationTime, RD_SumTime, RD_PrecisionRate, RD_TestTime  分别对应用户名,阅读文章,正确答案,默写答案,上次阅读的位置,阅读速度,阅读时间,默写时间,总时间,默写正确率,测试时间查询用户最近一个月内的正确率大于60%的阅读记录,每天只显示符合条件的速度最高的那个(每个用户一天内可能有多条数据,也可能一条数据也没有)
查看完整描述

1 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

select * from
(select distinct convert(varchar(10),RD_ReadTime,112) RD_ReadTime from [tablename]) a
cross apply  (select top 1 * from [tablename]
where  a.RD_ReadTime=convert(varchar(10),RD_ReadTime,112)
  and left(convert(varchar(10),RD_ReadTime,112),6)=left(convert(varchar(10),getdate(),112),6)
  and RD_User=[你想要的用户名] --也可不要这个条件则不限用户
  and RD_PrecisionRate>[你想要的正确率] --如大于%60
 order by RD_Speed desc --降序取每天速度最高 相反升序则取每天速度最低的
) b

 

如有疑问及时提出

查看完整回答
反对 回复 2019-01-07
  • 1 回答
  • 0 关注
  • 558 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信