- 我有識別表的學生,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