until someone wiser than me in sql answers your question, you can 'band-aid' your way around it with php,
ie;
<?php
$array = array (
'seven',
'six',
'five',
'four' //<< last result - don't want
);
$count = count($array); //or rather mysql_num_rows()
$i = 1;
while ($i != ($count)) { //it will be $i != ($count-1) w/ mysql i think
$var = $i-1; //<<because (for this example) we're not using mysql_fetch_array()
echo $array[$var].", ";
$i++;
}
?>
which outputs;
seven, six, five,
you'll have to change it around to accommodate mysql obviously, but that should help you out a little. my answer really makes no scene to me though as all it's doing is removing the last record which can be done in the query by just making the LIMIT one less...
edit:
i am writing some sql to select the last 3 records but not include the very last one.
if you're selecting three rows and ordering DESC in your query as you have it ie; 3, 2, 1. but you don't want the LAST result; ie; 1, then just select one less?
..I've confused myself. let's use a better rang of numbers: if you have say, 8, 7, 6, 5, 4, 3, 2, 1 and you only want three results, minus the first, ie; 7, 6, 5 then set LIMIT to 4 and with your while() loop just put something like:
$i = 1;
while ($row = mysql_fetch_array($result)) {
if ($i != 1) echo $row['content']; //<< if it's the first result, don't print
$i++;
}