2010-07-06 41 views
3

我很困惑如何限制MySQL中的選擇(例如SELECT * FROM tblProduction LIMIT 1,N;),其中N是未知的..任何人都可以幫助我如何限制在MySQL中的選擇?我想顯示從第2行(2)開始直到記錄結尾的記錄。謝謝!我如何限制在MySQL中的選擇?

回答

6

這是從限制文件:

從某個檢索所有行偏移到結果集的末尾,你可以使用一些大量的第二個參數。此語句檢索從第96行中的所有行到最後:

SELECT * FROM tbl LIMIT 95,18446744073709551615; 

編輯:所以你的情況,你會只是改變95爲2。然後你會得到從2結果開始的所有行。

+1

來源:http://dev.mysql.com/doc/refman/5.1/en/select.html – DPlusV 2010-07-06 05:29:32

+0

前提是使用一個明確定義的值的上限;在這種情況下是一個無符號的64位整數。 – 2010-07-06 05:48:06

+1

謝謝你,我必須在我的SQL查詢中使用INNER JOIN本身解決此問題。 – Bryan 2010-07-19 06:51:34

-2

嗨,你可以通過查詢字符串或一些cookie N價值。

"SELECT * FROM tblProduction LIMIT 1,".$_GET[Limit]; 
+2

討厭的做法,像直接放棄GET一樣 – alex 2010-07-06 05:27:58

+0

1)不回答這個問題。 2)這是小鮑比表時間... – Pete 2010-07-06 05:38:39

+0

擴展@alex評論,最好的做法是嘗試將HTTP-GET查詢字符串($ _GET)轉換爲整數。在這種情況下,針對注入攻擊的解析是毫無意義的,因爲該值只能是一個整數。 – 2010-07-06 05:41:25