--- title: 'mysql - 取得多筆max資料' disqus: hackmd --- mysql - 取得多筆max資料 === ![downloads](https://img.shields.io/github/downloads/atom/atom/total.svg) ![build](https://img.shields.io/appveyor/ci/:user/:repo.svg) ![chat](https://img.shields.io/discord/:serverId.svg) ## Table of Contents [TOC] ## 情境 我想要取得IndexSn為5的且Hour為最大值多筆資料。 --- ```gherkin= SELECT t.* FROM `tablename` t JOIN (SELECT max(`Hour`) AS mxHour FROM `tablename`) x ON x.mxHour = t.`Hour` AND t.IndexSn = 5; ``` > tablename為資料表 > 本來我使用這個也是可以出來,但是使用JOIN會比較容易拖垮效能。 ```gherkin= SELECT * FROM `tablename` WHERE IndexSn = '5' AND `hour` = (SELECT max(`Hour`) FROM `tablename` WHERE IndexSn = '5' ); ``` > 後來強者我同事覺得這樣比較優XDD ## Appendix and FAQ :::info **Find this document incomplete?** Leave a comment! ::: ###### tags: `mysql` `MAX`