看板 Database 關於我們 聯絡資訊
作者: foxzgerald (O⊥M) 看板: Database 標題: Re: [SQL ] MySQL可以一次選取特定範圍嗎? 時間: Sun Sep 3 04:11:12 2006 ※ 引述《foxzgerald (O⊥M)》之銘言: : 既然已經排序過了,如果把電話號碼當數字來想,應該會比較簡單: : SELECT phone_number as p : FROM _table_name_ : GROUP BY phone_number : WHERE p >= 239939889 LIMIT 5
noguest:要稍微修正一下, 把 WHERE 改成 HAVING 09/03 03:08
嗯.. 參考 noguest 的意見.修正一下我之前的文章 如果不用 Group by 的話,單以 SELECT phone_number as p FROM _table_name_ WHERE p >= 239939889 LIMIT 5 在查詢效率上會高一點 然而若需用 Group by 和 Having 那麼也盡可能先以 Where 濾掉多餘的資料。 主因是 Having 的查詢效率要比 Where 差; 先以 Where 排除掉、再讓 Having 濾掉剩下的多於資料,這樣整體效率會高一點 另外,由於原始資料已排序過,若單純只選擇電話號碼一欄, 應該是不需用到我先前的 Group By :P -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.199.121
noguest:不好意思沒說清楚, 我只是想指出GROUP BY後面只能接HAVING 09/03 06:39
noguest:不能接 WHERE. 若用 WHERE 要放在 GROUP BY 之前. 09/03 06:45