看板 Database 關於我們 聯絡資訊
看了一下 終於看懂(看code一整天 頭昏腦脹ORZ) SELECT test.groupno ,test.x,test.y,a1.dates FROM test inner join ( SELECT GroupNo , MAX( Dates ) as dates FROM test GROUP BY GroupNo )a1 on test.groupno =a1.groupno and test.dates =a1.dates TRY看看 提醒一下 column盡量不要用date ※ 引述《george755185 (覺悟者恆幸福)》之銘言: : 這是一個假設的欄位: (設名稱是test) : GroupNo | x | y | Date : --------------------------- : 今天我想依GroupNo分類,將各類下Date最大的x,y資料取出 : 我用的語法是: : SELECT GroupNo, x, y, Date : FROM test : WHERE ( : GroupNo, Date : ) : IN ( 這邊用in 陷入一筆一筆比對的效能問題吧? maybe~ : SELECT GroupNo, MAX( Date ) : FROM test : GROUP BY GroupNo : ) : 可以達到我要的效果 : 但是在資料量大(2000筆以上)的時候,速度太慢無法符合需求 ~"~ : 有什麼方法可以改善這個查詢的效率嗎? : 或是在使用 MAX...GROUP BY ....的時候,能不能將這個MAX列的其他欄位一併取出來? -- ▆▆▆▆ 幹你媽的! ◢███◣ ████ ◢████◣ ◢███◣ 停撥黑棒! ▂▂▂▂▂ ███ ██████ ◤ ◥█ 還我南方! ⊙ ⊙ ⊙ ⊙ ⊙ ⊙ ⊙⊙ 炸你全家! 皿 ◢ ◢▇▇▇◣ ◢███ ︶ ◢ ψdiabloq13 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.86.130.111
george755185:感謝~ 也感謝下午寄信給我的rushcat 解決了我的問題 09/13 02:11
george755185:這個方法的速度的真的差很多 9秒-->0.005秒 09/13 02:16
slalala:樓上是說rushcat大大的方法嗎 效率如此高 可否分享?XD 09/13 02:18
george755185:和這篇的方法是一樣的~ 應該是我原來的寫法太笨0rz 09/13 02:35
george755185:啊...小數點後多了一個0 0.051才對XD 09/13 02:49
fphoenix923:不太懂為什麼column不要用date? 09/13 19:56
slalala:雖然DATE不是MYSQL的保留字 覺得date這字卻用的很頻繁 09/13 20:51
fphoenix923:原來是指欄位名稱@@ 09/13 21:14