这看起来很简单,但是它失败了。我想要做的就是使用下面的代码删除除第一行以外的所有内容。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