這看起來很簡單,但是它失敗了。我想要做的就是使用下面的代碼刪除除第一行以外的所有內容。MySQL刪除限制
$sql = "DELETE FROM ".TABLE_PREFIX."news WHERE course_id = $course_id LIMIT 1,18446744073709551615";
$result = mysql_query($sql, $db);
如果我這樣做...
$sql = "SELECT news_id FROM ".TABLE_PREFIX."news WHERE course_id = $course_id LIMIT 1,18446744073709551615";
$result = mysql_query($sql, $db);
while ($row = mysql_fetch_assoc($result)) {
echo $row['news_id'] . '<br>';
}
所有news_ids都回蕩除了第一個。爲什麼刪除語句不是工作時選擇相同的語句是工作?
什麼決定了第一行是什麼? – ApplePie
另外,在DELETE語句中,這不是正確的LIMIT語法 - 您只需要包含一個用於刪除最大行數的整數:http://dev.mysql.com/doc/refman/5.0/en/delete .html – andrewsi
「LIMIT 1,18446744073709551615」部分應該是跳過第一行,然後刪除其他所有內容。我從這裏得到了這個主意:http://stackoverflow.com/questions/2827029/mysql-skip-first-10-results – gtilflm