2010-07-07 126 views
1

我如何選擇除MySql查詢中前3行以外的所有行?在mysql中選擇一個值範圍

$query = mysql_query("SELECT * FROM comments WHERE approved = 1"); 
+0

根據什麼標準你定義「第一」? – phimuemue 2010-07-07 05:35:53

+0

不管我如何訂購或排序,我都希望它能夠工作。 – ian 2010-07-07 05:38:32

+0

可能重複[Mysql Offset Infinite rows](http://stackoverflow.com/questions/255517/mysql-offset-infinite-rows) – 2010-07-07 05:40:29

回答

2

你想以下:

$query = mysql_query("SELECT * FROM comments WHERE approved = 1"); 
$rowCount = 0; 
while ($row = mysql_fetch_assoc($query)) { 
    $rowCount = $rowCount + 1; 
    // do stuff only if you have reached the third row. 
    if ($rowCount > 3){ 
     // do stuff here 
    } 
} 
0
$query = mysql_query("SELECT * FROM comments 
            WHERE approved = 1 
            ORDER BY columnName 
            LIMIT 3"); 

要找到COLUMNNAME第三記錄順序使用

$query = mysql_query("SELECT * FROM comments 
            WHERE approved = 1 
            ORDER BY columnName 
            LIMIT 2, 1"); 

查找除第1行之外的所有其他行使用LIMIT 2, total_no_of_rows

如果您不知道total_no_of_rows使用非常大的數字而不是它。

$query = mysql_query("SELECT * FROM comments 
            WHERE approved = 1 
            ORDER BY columnName 
            LIMIT 2, total_no_of_rows"); 
+0

@Flexi Kling: - 是的,我現在編輯我的答案。 – Salil 2010-07-07 05:47:09

+0

這只是第一個* 2 *而已。 – 2010-07-07 05:53:51