看板 Database 關於我們 聯絡資訊
資料庫名稱:Mysql 資料庫版本:5.0 內容/問題描述:目前假設有三位學生 A B C (欄位stud) 每天都有路跑分數,如果是這位同學一個月最高分數 則會個別寫入到創高紀錄的資料庫中 (資料庫grade) 那我假設要取出從9月到目前,他們各別最高分數的數值與日期要如何做呢? 直接用下面方式好像都是取靠近09/01的最高分數資料,而非最後面最高分 SELECT stud, num, date FROM grade where date>'2019-09-01' Group by stud 不知道有沒有其他寫法呢? 謝謝 另外再請教一下,如果沒有每天做創高記錄的資料統計 若是用單純每天只是記錄學生的分數 那這樣要直接取出他們各別這一個月內的最高分數與日期 這個能直接寫得出來嗎? 因為這樣就不用再多做一個每天統計是否創高紀錄的寫入 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 115.43.67.15 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1570744616.A.012.html ※ 編輯: jami520 (115.43.67.15 臺灣), 10/11/2019 06:14:03
ken218: 用 rank 會比較好,不過我不確定 mysql 有沒有這個 functi 10/11 14:10
ken218: on 10/11 14:10
springman: 可以用 max(date) 嗎? 10/12 11:03
xdraculax: group取最高分 join 分數符合最高分取最大日期 10/19 09:03