- 我有识别表的学生,SID,CHECKID,DATE
- 这里ID:TABLEID(自动递增),SID:studentID,CHECKID:0/1(即IN/OUT ),DATE。
- 当学生进入教室时,他会通过卡片节省每天的出勤。
我有数据是如何让学生详细SQL查询
ID SID CHECKID DATE
--- --- -------- -----
0 101 0 04-10- 2013 10:00:00
1 101 1 2013年4月10日11时30分00秒
2 101 0 2013年4月10日14点15分00秒
我试图像查询:
由SID
从学生选择DISTINCT SID,MAX(DATE),CHECKID其中SID = '101' 组然后我得到的结果作为两个记录。
我需要的记录是最大日期(即特定学生的最近记录),如:仅限第3条记录。
任何help.thanks提前。
3
A
回答
4
最快的办法可能是使用的解析函数:
select *
from (select s.*,
row_number() over(partition by sid order by date desc) as rn
from student s)
where rn = 1
另一种方式是一个相关子查询:
select *
from student s
where date = (select max(x.date) from student x where x.sid = s.sid)
另一种方法是加入到内嵌视图:
select s.*
from student s
join (select sid, max(date) as sid_last_date from student group by sid) v
on s.sid = v.sid
and s.date = v.sid_last_date
+1
感谢它为我工作,当我添加** select * 从学生s 其中date =(从学生x选择max(x.date)x其中x.sid = s.sid)和s.sid ='101'* * – kks 2014-10-05 14:23:25
+1
@kks我没有意识到你对某个特定的学生感兴趣,只是在where子句中添加了一些特定的人。上述查询将过滤每个学生的最后一个有效日期行。之后,你可以自由地过滤其他任何东西。 – 2014-10-05 14:25:44
相关问题
- 1. Django详细查询
- 2. SQL查询主详细样式
- 3. Magento sql查询产品详细信息
- 4. SQL查询来获取旅行详细
- 5. 如何让linq主详细查询0..n关系?
- 6. 如何解决这个SQL查询(标题和详细信息)?
- 7. 如何在T-SQL中编写复杂的主详细查询
- 8. 主查询详细信息
- 9. 在magento中查询sql查询的详细信息?
- 10. 针对主详细查询结果的SQL Server条件查询
- 11. 关于SQL查询提示在SQL Server中的详细信息
- 12. 如何使用查询从sql server中获取表的详细信息?表详细信息
- 13. 学生在学校查询
- 14. SQL查询有关学生数据库:
- 15. SQL查询 - 学生数据库
- 16. 如何检查子查询输出的详细信息?
- 17. 详细信息sql
- 18. 如何生成SQL查询
- 19. 添加查询生成器的详细条件,多对多
- 20. 由休眠生成的过度详细的查询
- 21. 使我的MySQL查询更加详细
- 22. 交叉表查询详细数据
- 23. ActiveRecord查询详细和汇总数据
- 24. MySQL内部加入子查询(详细)
- 25. SQL - 查找列FK的详细信息
- 26. 从SQL详细信息删除查看
- 27. 从SQL子查询中获取更多详细信息
- 28. SQL查询 - Oracle GL事务处理详细信息
- 29. javafx加载sql查询的详细信息执行
- 30. 从查询表中提取员工详细信息的SQL查询
您使用的是MySQL还是Oracle?你标记了两个,但它们是非常不同的数据库。 – 2014-10-05 14:12:58
感谢Brian ReMilia的重播。使用Oracle。 – kks 2014-10-05 14:15:49